编辑:我决定只清除我的 apache 和 php 安装并从头开始。现在一切正常,不知道为什么以前没有。我可能已经设置了 30 台不同的 LAMP 类型的服务器,但以前从未遇到过这种情况,我想我只会把它归结为精神错乱。
原问题如下:
问候,
PHP 文件没有在我的网络服务器上正确执行。我有一个测试文件如下:
<html>
<head>
<title>Testing PHP</title>
</head>
<body>
<?php
phpinfo( );
?>
</body>
</html>
这是我安装的 PHP 和 apache 包:
$ dpkg -l | grep php ii libapache2-mod-php5 5.2.6.dfsg.1-3ubuntu4.2 ii php 配置 1.10.11-1 ii php-pear 5.2.6.dfsg.1-3ubuntu4.2 ii php5 5.2.6.dfsg.1-3ubuntu4.2 ii php5-cgi 5.2.6.dfsg.1-3ubuntu4.2 ii php5-cli 5.2.6.dfsg.1-3ubuntu4.2 ii php5-common 5.2.6.dfsg.1-3ubuntu4.2 ii php5-mysql 5.2.6.dfsg.1-3ubuntu4.2 $ dpkg -l | grep 阿帕奇 ii apache2-mpm-prefork 2.2.11-2ubuntu2.3 ii apache2-utils 2.2.11-2ubuntu2.3 ii apache2.2-common 2.2.11-2ubuntu2.3 ii libapache2-mod-auth-mysql 4.3.9-11 ii libapache2-mod-php5 5.2.6.dfsg.1-3ubuntu4.2
这是我的 php 相关配置行:
$ grep -n php /etc/apache2/apache2.conf /etc/apache2/mods-enabled/php5.* /etc/apache2/httpd.conf /etc/apache2/mods-enabled/php5.conf:1: <IfModule mod_php5.c> /etc/apache2/mods-enabled/php5.conf:2: AddType 应用程序/x-httpd-php .php .phtml .php3 /etc/apache2/mods-enabled/php5.conf:3: AddType application/x-httpd-php-source .phps /etc/apache2/mods-enabled/php5.load:1: LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
如您所见,php5 模块已加载。我可以确认这一点,因为 a2enmod 表明它已经加载。
目前,尝试在浏览器中加载 PHP 文件只是将其显示为原始文本。
奇怪的是,在尝试修复它时,我发现如果我在 httpd.conf 的底部添加“AddType application/x-httpd-php .php .phtml .php3”之类的行,然后它突然开始要求我下载那些php 文件代替。这很奇怪,考虑到这一行与 php5.conf 模块文件中的相同。
显然,两者都不是期望的行为。
另外,是的,apache2 甚至服务器本身都已多次重新启动。Apache 提供常规 HTML 页面没有问题。
有任何想法吗?