最近将我的系统从Karmic升级到了Lucid。我相信这涉及到Apache和PHP的更新。
现在我的服务器无法处理PHP文件,对它们的任何导航都将触发下载而不是解析。
PHP模块仍在启用Apache mods的情况下加载,而我AddType application/x-httpd-php .php
在httpd.conf中。
Apache访问或错误日志中没有有意义的消息,所以我很困惑。
任何帮助,将不胜感激。谢谢。
/var/log/apache2/error.log
如果成功加载了PHP,则应该显示如下一行:
[2011年8月30日星期二12:53:36] [注意]配置了Suhosin-Patch的Apache / 2.2.14(Ubuntu)PHP / 5.3.2-1ubuntu4.9-恢复正常运行
请注意日期,如果是2009年的日期,则说明配置错误。
AddType
是没有用的,您需要使用:
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
另请参阅php.net上针对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>
由于它是配置文件,因此升级时可能未安装该文件。为了解决这个问题清除它,然后再重新安装:
sudo apt-get purge libapache2-mod-php5
sudo apt-get install libapache2-mod-php5
要启用PHP,您必须运行:
sudo a2enmod php5
在以下情况下重新启动Web服务器:
sudo /etc/init.d/apache2 restart
其他要做的事情:
/etc/apache2
。sudo apache2ctl configtest
以检查配置中的语法错误status
模块必须加载此。如果您正在运行远程服务器,则需要将自己添加到Allow from
列表中,/etc/apache2/mods-enabled/status.conf
然后再重新启动服务器本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句