Wordpress 网站在 Ubuntu 18.04 LTS 上全新安装 VirtualMin 后显示 php 代码
Posted
技术标签:
【中文标题】Wordpress 网站在 Ubuntu 18.04 LTS 上全新安装 VirtualMin 后显示 php 代码【英文标题】:Wordpress site shows php code after fresh install of VirtualMin on Ubuntu 18.04 LTS 【发布时间】:2020-02-03 07:39:10 【问题描述】:安装 Virtualmin 后,我的 WordPress 网站立即出现以下错误。网站之前运行良好。通过将我的虚拟机恢复到以前的状态,我已经重复了几次。我就是搞不定。
一些历史。我有一个全新的 Ubuntu 全新安装,然后我使用 Linode 的指南进行了设置。发行商 ID:Ubuntu 描述:Ubuntu 18.04.3 LTS 版本:18.04 代号:仿生
LAMP 堆栈。 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' );
【问题讨论】:
不幸的是,可能有很多事情是错误的。但它似乎应该是像SetHandler这样的Apache中的配置问题(不懂PHP) 好的,我们可以开始研究“这么多东西是什么”吗?我检查了 SetHandler 并找不到它的设置。有没有特定的地方可以看?还有其他建议吗? 如果您看到 PHP 源代码,我最好的选择是 Apache 2 配置问题。从那里开始。抱歉,我不能更具体地说明问题出在哪里。也许试试***.com/questions/11595830/… 或techrepublic.com/article/… 祝你好运! 谢谢@jannej 我会去看看。 【参考方案1】:嗯,好的,我找到了解决办法。
在安装 VirtualMin 之前和之后获取整个 apache2 文件夹的 TAR 副本。然后通过 FTP 将 tar 文件下载到我的 PC 上,然后解压缩它们。
然后使用一些名为 Beyond Compare 的软件来比较两个文件夹的文件差异。然后浏览并比较每个已更改的文件的内容。
最值得注意的是对 /etc/apache2/mods-available/php7.2.conf 文件的更改。定义 SetHander 的顶部附近的 2 行已被注释掉。我从@jannej 的评论中了解到这一点。删除 cmets 然后重新启动 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
【讨论】:
以上是关于Wordpress 网站在 Ubuntu 18.04 LTS 上全新安装 VirtualMin 后显示 php 代码的主要内容,如果未能解决你的问题,请参考以下文章
ubuntu 18.0Lts +YouCompleteMe插件安装