【问题标题】:How can I pass structured data to my (F)CGI through Apache?如何通过 Apache 将结构化数据传递给我的 (F)CGI?
【发布时间】:2009-01-08 13:14:38
【问题描述】:

我们有一个用于身份验证的 apache 模块。如果用户能够进行身份验证,则REMOTE_USER 环境变量将设置为他们的用户名,他们访问的任何 CGI 都可以使用该用户名。

我想添加一个功能/模块,以便我们可以从 LDAP 数据源获取有关用户的其他信息,并使其可用于 CGI 和 FCGI 应用程序。

既然我知道我们可以将信息放入环境中,那么在环境变量中存储更复杂的数据结构(例如 JSON)是否合适?这对我来说似乎很笨拙。有没有更好的方法?

如果它依赖于语言,那么我对 Perl 最感兴趣,但如果我能将这些数据提供给任何类型的 CGI 或 FCGI 应用程序,那将是最好的。我们在 RHEL 5.0(启用 SELinux)上使用 Apache 2.2。

【问题讨论】:

    标签: apache cgi fastcgi


    【解决方案1】:

    如果您需要使用 CGI,环境变量似乎是唯一的选择(使用 mod_perl,您可以访问 Apache 的内部数据结构)。

    如果数据对于环境来说太大,您可以创建一个临时文件并仅传递文件名。您也可以将此信息存储在数据库中。在这两种情况下,您可能需要担心清理临时数据以及并发访问的竞争条件。

    如果您已经拥有持久的服务器端会话数据(会话文件或目录或共享内存段),您可能希望将其放置在其中。

    【讨论】:

      猜你喜欢
      • 2012-07-06
      • 2011-08-06
      • 1970-01-01
      • 2013-11-15
      • 1970-01-01
      • 1970-01-01
      • 2019-11-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多