【问题标题】:Apache ignoring httpd.conf assigned pathApache 忽略 httpd.conf 分配的路径
【发布时间】:2015-02-01 17:17:35
【问题描述】:

在尝试解决我的 cgi-bin 上的路径错误时,我发现 Apache 在错误的位置寻找它。

错误日志显示: 找不到或无法统计脚本:/Library/Server/Web/Data/CGI-Executables

但我的 httpd.conf 文件有:

ScriptAliasMatch ^/cgi-bin/((?!(?i:webobjects)).*$) "/Library/WebServer/CGI-Executables/$1"

    <Directory "/Library/WebServer/CGI-Executables">
        AllowOverride None
        Options None
        Require all granted
    </Directory>

默认情况下,这些路径位于 httpd.conf 中。 httpd.conf 中没有对 /Library/Server/Web/Data 的任何类型的引用

如果我将整个 CGI-Executables 目录移动到 /Library/Server/Web/Data/ 一切正常。这很好,但我希望它是 /Library/WebServer/

什么会导致 Apache 忽略 httpd.conf 分配的路径,我该如何纠正它?

【问题讨论】:

    标签: apache cgi httpd.conf


    【解决方案1】:

    已解决 这是苹果公司的一大缺点。

    在使用 Apache 的标题下,OS X 服务器文档显示从 /Library/WebServer/CGI-Executables/ 提供的 cgi。果然,他们说应该在的地方有一个 CGI-Executables 文件夹。

    在 OS X Server 的帮助模块中,对于 cgi 信息,它将您链接到有关 .htaccess 文件的 Apache 教程。在那里你可以学习编辑 htaccess 来为 Apache 提供你想要的路径。但它永远不会起作用。

    Apple 永远不会分享的是 OS X Server 有它自己的特殊配置文件:httpd_server_app.conf。您可以在 /Library/Server/Web/Config/apache2/ 内的 Read Me.txt 中找到有关它的信息。这是我找到的对 httpd_server_app.conf 的唯一引用,它是对不存在的 /Library/Server/Web/Data/CGI-Executables 目录的唯一引用。

    因此,OS X Server 上的 cgi-bin URL 的解决方案是为您的 cgi 脚本创建一个新文件夹 /Library/Server/Web/Data/CGI-Executables。或者编辑 cgi ScriptAlias 和 Directory 路径以匹配您喜欢的路径,例如 Apple 在其他任何地方引用的 /Library/WebServer/CGI-Executables。

    【讨论】:

      猜你喜欢
      • 2014-03-01
      • 2012-08-16
      • 1970-01-01
      • 1970-01-01
      • 2017-07-16
      • 1970-01-01
      • 1970-01-01
      • 2016-11-04
      • 2010-12-19
      相关资源
      最近更新 更多