代码之家  ›  专栏  ›  技术社区  ›  Jesse

Apache&php 500错误噩梦

  •  3
  • Jesse  · 技术社区  · 14 年前

    我试图在一个VPS上为PHP添加curl支持,在登录并尝试执行一次PHP升级之后,我的站点每次尝试访问它时都会给我500个错误。

    所以,我尝试用easyapache刷新Apache安装,但它很快就摆脱了PHP脚本仍然不起作用的事实。

    我决定PHP解析一定有问题,所以我跟踪-f'd/etc/httpd/log s/error_log并尝试导航到该站点,而且可以肯定的是,似乎头有问题。

    以下是所有php文件请求上生成的错误日志:

    [Fri Jun 18 20:01:47 2010] [error] [client 00.00.00.00] malformed header from script. Bad header=<head> : index.php

    据我所知,“坏头”总是等于PHP脚本的第一行。

    不幸的是,我在这之后遇到了很多麻烦,我从来没有遇到过这样的问题,尽管我知道如何处理Unix,但我不是服务器管理员。

    我想这可能是一个服务器故障问题,但我认为这是开发人员更可能遇到的类型,所以你们可以提供帮助。

    1 回复  |  直到 9 年前
        1
  •  3
  •   analogue    14 年前

    似乎您已经从php<5.2.3升级到php>=5.2.3。 在php 5.2.3 changelog中,您可以读取:

    已将CGI安装目标更改为php CGI 和“make install”以在 选择CGI。

    您需要使用php-cgi二进制文件,而不是php二进制文件。

    在Apache配置中,检查以下行:

    Action application/x-httpd-php /usr/bin/php-cgi
    

    如果它指向/usr/bin/php二进制文件,则指向php-cgi。