WordPress网站在Ubuntu 18.04 LTS上全新安装VirtualMin后显示php代码



安装Virtualmin后,我的WordPress网站立即收到以下错误。网站以前运行良好。我已经通过将 VM 还原到以前的状态来重复多次此操作。我只是无法解决。

一些历史。我有一个新的 Ubuntu 全新安装,然后我使用 Linode 的指南进行设置。分销商 ID: Ubuntu 描述: Ubuntu 18.04.3 LTS 版本: 18.04 代号: 仿生

灯组。PHP 7.2.防火墙是 UFW。安装Webmin后,网站仍然可以工作,但是一旦我安装了VirtualMin,我就会得到以下内容。Virtualmin完成,没有错误。网站仍然运行良好...直到我重新启动,然后它失败。

我已经重试重新启动 Apache2。已尝试重新安装 apache。我已经检查了 PHP ini 文件,它们看起来很好。尝试重新安装PHP并重新启动它。

PHP日志还显示重复的错误,例如"PHP警告:fopen((:文件名不能为空"我试图重新提取Wordpress站点文件的副本,但它仍然不起作用。

有什么建议吗?

<?php
/**
* Front to the WordPress application. This file doesn't do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.
*
* @package WordPress
*/
/**
* Tells WordPress to load the WordPress theme and output it.
*
* @var bool
*/
define( 'WP_USE_THEMES', true );
/** Loads the WordPress Environment and Template */
require( dirname( __FILE__ ) . '/wp-blog-header.php' );

啊,好的,我找到了一个解决方案。

在安装VirtualMin之前和之后获取了整个apache2文件夹的TAR副本。然后FTP将tar文件下载到我的PC上,并提取它们。

然后使用一些名为Beyond Compare的软件来比较两个文件夹的文件差异。 然后浏览并比较了每个已更改文件的内容。

最值得注意的是对/etc/apache2/mods-available/php7.2.conf 文件的更改。 顶部附近定义 SetHander 的 2 行被注释掉了。我从@jannej的评论中了解到这一点。删除注释然后重新启动 apache 服务器解决了这些问题。

希望这对其他人有所帮助。

<FilesMatch ".+.ph(ar|p|tml)$">
#    SetHandler application/x-httpd-php    <<--- remove the comment
</FilesMatch>
<FilesMatch ".+.phps$">
#    SetHandler application/x-httpd-php-source   <<--- remove the comment
# Deny access to raw php sources by default
# To re-enable it's recommended to enable access to the files
# only in specific virtual host or directory
Require all denied

最新更新