10.04 – 系统升级后PHP无法在Apache2中运行

最近我的系统从Karmic升级到了Lucid.这包括我相信Apache和PHP正在更新.

现在我的服务器无法处理PHP文件,对它们的任何导航都会触发下载而不是解析.

PHP模块仍然在Apache mods-enabled中加载,我有
我的httpd.conf中的AddType application / x-httpd-php .php.

Apache访问或错误日志中没有有意义的消息,所以我很难过.

任何帮助,将不胜感激.谢谢.

解决方法:

如果PHP成功加载,/ var / log / apache2 / error.log应显示如下所示的行:

[Tue Aug 30 12:53:36 2011] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.9 with Suhosin-Patch configured — resuming normal operations

注意日期,如果它是2009年的东西,你就错误配置了一些东西.

AddType没用,你需要使用:

<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>

另见installation instructions on php.net for Apache 2.x.

您不需要手动添加,libapache2-mod-php5软件包安装/etc/apache2/mods-available/php5.conf包含:

<IfModule mod_php5.c>
    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
    # To re-enable php in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
    <IfModule mod_userdir.c>
        <Directory /home/*/public_html>
            php_admin_value engine Off
        </Directory>
    </IfModule>
</IfModule>

由于它是一个conffile,它可能没有安装升级.要修复清除它然后再次安装它:

sudo apt-get purge libapache2-mod-php5
sudo apt-get install libapache2-mod-php5

要启用PHP,您必须运行:

sudo a2enmod php5

之后重启网络服务器:

sudo /etc/init.d/apache2 restart

其他事情要做:

>检查/ etc / apache2中是否存在冲突设置.
>你从源代码构建了Apache吗?
>运行sudo apache2ctl configtest以检查配置是否存在语法错误
>打开http://localhost/server-info以检查加载的配置和模块.必须为此加载状态模块.如果您正在运行远程服务器,则需要将自己添加到/etc/apache2/mods-enabled/status.conf中的Allow from列表中,然后重新启动服务器

上一篇:使用php5模块时Apache2启动错误(Ubuntu Server)


下一篇:Xshell链接虚拟机CentOS7.x