【问题标题】:apache2 php5 combibation not working on OS X El capitanapache2 php5 组合在 OS X El capitan 上不起作用
【发布时间】:2016-05-02 19:02:07
【问题描述】:

我是 apache 的菜鸟。我正在尝试将它设置在 El Capitan 上。 1. 我已启用“LoadModule php5_module”并将 helloWorld.php 放在我的文档根目录中。 (/Library/Webroot/Documents)(我不需要基于用户的文档根目录。)
2. 如果我从终端运行 php,那么它可以工作。
3. 但是我通过浏览器运行时它不起作用。它抱怨我需要启用 ExecCGI。
4. 如果我为 documentRoot 启用 ExecCGI,则会收到有关格式错误的标头的错误。
5.我的理解是,如果我启用 php5_module,我不需要将 php 脚本视为 CGI,这就是我不需要 ExecCGI 的原因。 (我确实有一些其他 cgi 目录,其中包含一些 python 脚本,它们工作正常。)

我的 httpd.conf 中也有以下几行
<IfModule php5_module> AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps AddHandler php5-script .php </IfModule>

有人可以建议我在哪里做错了。

谢谢

【问题讨论】:

    标签: php macos apache web


    【解决方案1】:

    我不使用内置的 apache,而且我认为 httpd.conf 有被更新覆盖的风险。但是,在我的 apache 安装中,我的 AddType 和 AddHandler 与您的方式相反:

    AddHandler application/x-httpd-php .php
    AddHandler application/x-httpd-php-source .phps
    AddType text/html .php
    

    另外,如果你打算自动使用index.php:

    DirectoryIndex index.html index.php
    

    希望对您有所帮助。

    【讨论】:

    • 最后我找到了解决方案,它使用的是 php-cgi 而不是 php。 php-cgi 添加了所需的标头,修复了格式错误的标头问题。
    猜你喜欢
    • 2016-10-07
    • 2016-10-26
    • 2016-02-09
    • 2016-01-11
    • 2016-12-30
    • 1970-01-01
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    相关资源
    最近更新 更多