Apache 无法正确显示 PHP 页面

Apache 无法正确显示 PHP 页面

最初,问题是我的服务器上的 PHP 文件显示为纯文本(显示了整个代码)。所以我通过调查发现必须将 MIME 类型添加到/etc/mime.types,所以我这样做了,还重新启动了我的服务器,但这并没有帮助解决问题,因此在进一步调查后,我发现这里我们需要启用 php5 模块,但在运行 时apachectl -M,我找不到列出的 php5 模块。因此,我尝试安装它,结果如下:

admin@vm:~$ sudo apt-get install php5
...
php5_invoke pdo: already enabled for apache2 SAPI
dpkg: error processing package libapache2-mod-php5 (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 libapache2-mod-php5
E: Sub-process /usr/bin/dpkg returned an error code (1)

admin@vm:~$ sudo apt-get install libapache2-mod-php5
...
dpkg: error processing package libapache2-mod-php5 (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 libapache2-mod-php5
E: Sub-process /usr/bin/dpkg returned an error code (1)

我还需要说明的是,我为网站创建了 2 个虚拟主机。我不知道哪里出了问题。有人能帮我解决吗?

答案1

无法安装 mod_php 模块。这实际上是包管理器级别的问题,而不是 Apache 的问题。

不幸的是,您的帖子中没有有用的错误 - 也许可以用完整的错误消息替换...。

您可以尝试以下方法(大多数方法都可以,但请注意命令输出)

$ sudo apt-get update # refresh packages $ sudo apt-get -f install # retry configuring packages $ sudo apt-get dist-upgrade # upgrade all packages to latest version

我猜这些提示大部分都无法解决问题。我猜是权限问题或手动编辑配置文件导致问题出现。

进行备份!如果没有任何帮助,请尝试从头开始:

$ sudo apt-get --purge apache2 $ sudo apt-get --purge php5 libapache2-mod-php5 $ sudo apt-get --purge autoremove # could remove more stuff, pay attention! $ sudo mv /etc/apache2 /tmp/apache2.orig $ sudo mv /etc/php5 /tmp/php5.org $ sudo apt-get install apache2 libapache2-mod-php5 php5 $ sudo a2enmod php5 # enable php module

相关内容