Apache2不能正确地提供PHP脚本

我遇到了Apache 2.2.16configuration的问题,运行在Debian Squeeze上。 问题是,它完全停止提供PHP5脚本。 当我尝试使用Google Chrome访问网站时,它会下载一个名为“download”的文件,其中包含脚本的内容。 这当然不是一件好事。 它确实服务于常见的html文件…

我已经在这一段时间了,毕竟这是一个search和排除故障的问题,我认为现在是问问你们的好时机。 这是我得到的:

  1. 安装了php5和libapache2-mod-php5软件包
  2. / etc / apache2 / mods-available同时包含php5.load和php5.conf,并且这些从mods-enabled目录中链接
  3. 自安装以来,/ etc / php5 /目录保持不变。

这是/etc/apache2/mods-available/php.load的内容:

LoadModule php5_module /usr/lib/apache2/modules/libphp5.so 

和/etc/apache2/mods-available/php.conf:

 <IfModule mod_php5.c> <FilesMatch "\.ph(p3?|tml)$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch> <IfModule mod_userdir.c> <Directory /home/*/public_html> php_admin_value engine Off </Directory> </IfModule> </IfModule> 

我错过了什么? 这是一个修改虚拟主机等服务器,所以我可能已经改变了一些导致这个问题的设置,但只是清除和重新安装是不是一个选项,因为configuration是相当广泛的。 任何帮助将是伟大的。 谢谢。

编辑:我试图访问在/ var / www /下的虚拟Apache主机上运行的脚本。 这些configuration是这样的:

 <VirtualHost 1.2.3.4:80> ServerAdmin [email protected] ServerName domain.com ServerAlias www.domain.com DocumentRoot /var/www/domain.com/public_html/ ErrorLog /var/www/domain.com/logs/error.log CustomLog /var/www/domain.com/logs/access.log combined Options -indexes </VirtualHost> 

您可以尝试删除整个php_admin_value engine Off设置,也许您意外地匹配脚本。 FilesMatch做不区分大小写的匹配吗? 也许检查你的正则expression式的语法?

php.conf如何被加载? 仔细检查它是否正确加载。

你想从哪里访问PHP脚本? 我猜在/ home / * / public_html的某个地方?

我相信php_admin_value引擎closures将closures引擎值在php.ini ..和每个php.ini的评论,它应该是:

 ; Enable the PHP scripting language engine under Apache. engine = On 

如果将php_admin_value引擎closures到php_admin_value引擎,会发生什么情况