Wordpress 崩溃,Apache 重启可暂时修复该问题

Wordpress 崩溃,Apache 重启可暂时修复该问题

我在使用 Wordpress 时遇到了一个奇怪的问题,我不知道该如何解决。大约一个月前,我更换了服务器,并将我的 Wordpress 文件和数据库从旧版本转移到了新版本。当时,我使用的是旧版本的 Wordpress,即需要 php5 的版本之前的版本(因为我没有 php5)。

成功移动所有内容后,我将 Wordpress 升级到最新版本。有些插件出现了问题(不幸的是,我记不清是哪些插件了),但我不太在意,因此我从插件目录中删除了这些文件。

一切似乎都很好,所以我就保持原样,直到有一天我收到一封电子邮件,说我的博客瘫痪了。我去查看了一下,结果看到的只是一个空白页。服务器中的其他一切都运行正常。我的 Apache 日志中没有严重的崩溃错误,但我注意到我没有启用 php 日志记录。因此,我对 php.ini 进行了适当的更改,重新启动了 Apache,它又恢复了运行。

然后,几天后,同样的事情又发生了。我只是重新启动了 Apache 看看会发生什么,它又恢复了正常。Apache 错误日志没有显示任何严重问题。Apache 访问日志和 Ubuntu 的系统日志也没有显示任何严重问题。但出于某种原因,尽管我已将 log_errors = On 和 error_log 设置为完整文件路径,但我看不到任何 PHP 日志文件。

有什么帮助吗?我甚至不知道从哪里开始找。

答案1

我终于找到了原因,所以我会回答我自己的问题,希望有人遇到同样的问题。

在 Apache 日志中搜索了一番之后,谷歌搜索Wordpress 空白页尝试了所有我发现的方法(结果发现,发生这种情况的原因有一百万个),我发现问题出在内存上。

从那以后修复就相当简单了:我在 wp-config.php 中添加了更多内存

define('WP_MEMORY_LIMIT', '128M');

答案2

如果您还不确定您的服务器上没有可疑或恶意代码,您可以尝试使用此脚本进行快速搜索:http://25yearsofprogramming.com/php/findmaliciouscode.htm

答案3

我遇到过类似的情况,这是由于内存不足和没有交换配置造成的,我在 AWS 上运行的是 Ubuntu 22.04 服务器,显然没有预先配置交换,请先使用以下命令检查内存使用情况

free -h 你应该得到如下输出:

               total        used        free      shared  buff/cache   available
Mem:           924Mi       315Mi       191Mi        92Mi       417Mi       358Mi
Swap:          5.0Gi       485Mi       4.5Gi

如果你没有交换,那么你可以在 Ubuntu 22.04 上使用以下命令轻松设置它

sudo fallocate -l 1G /swapfile
ls -lh /swapfile
sudo chmod 600 /swapfile
ls -lh /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

使其永久化:

sudo cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

完整的教程可在 digital ocean 上找到 https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-22-04

相关内容