WordPress 内存不足?5 种方法修复“Allowed Memory Size Exhausted”错误

WordPress 网站在运行过程中,有时会出现“Fatal error: Allowed memory size exhausted”(致命错误:允许的内存大小已耗尽)的问题。这通常是因为 WordPress 默认的内存限制(一般为 32MB)不足以支持网站的运行。

特别是当你的网站使用复杂的插件、主题,或者需要处理大量数据库查询、上传大文件时,内存需求会显著增加。要解决这个问题,可以通过调整 WordPress 配置文件或服务器设置来提高内存限制

为什么 WordPress 会出现内存限制错误?

WordPress 依赖服务器的 PHP 运行环境,而 PHP 运行的内存是有限的。如果你的 WordPress 网站使用的内存超过服务器允许的最大内存限制,就会出现 “Allowed memory size exhausted” 错误。

常见导致内存不足的原因:

复杂的数据库查询:一些插件或主题可能会运行大量查询,导致服务器占用过多内存。

低效的 PHP 版本:使用较旧版本(如 PHP 5.x)会导致内存利用率较低。建议升级到 PHP 8.x 及以上。

插件和主题占用大量资源:高资源消耗型的主题和插件会加大内存使用量。

高访问量:WordPress 需要动态生成页面,访问量增加会导致服务器负担加重。

大文件上传:上传大图片、视频或其他媒体文件时可能会触发内存限制错误。

自动加载数据:某些插件可能会在后台加载大量数据,增加内存消耗。

如何检查当前 WordPress 内存限制?

在增加 WordPress 内存限制之前,先检查当前的内存限制。

方法 1:通过 WordPress 后台检查

登录 WordPress 后台。

转到 工具 > 站点健康

点击 信息 选项。

向下滚动到 服务器 部分,找到 PHP 内存限制

此处会显示当前网站的 PHP 内存限制,例如 32M、64M 或 128M

方法 2:使用 PHP 文件检查

如果你不能访问 WordPress 后台,可以创建一个 PHP 文件来检查。

打开文本编辑器(如 JetBrains PhpStorm、VS Code)。

创建一个名为 phpinfo.php 的文件,并添加以下代码:<?php phpinfo(); ?>

将此文件上传到 public_html 目录。

在浏览器中访问 http://yourdomain.com/phpinfo.php,然后查找 memory_limit 值。

如何增加 WordPress 内存限制?

方法 1:编辑 wp-config.php 文件

wp-config.php 是 WordPress 的核心配置文件,可以直接调整内存限制。

步骤:

使用 FTP 客户端(如 FileZilla)或托管面板的文件管理器,找到 wp-config.php 文件(位于 WordPress 根目录 public_html)。

打开文件,在 /* That’s all, stop editing! Happy publishing. */ 之前添加以下代码:define(‘WP_MEMORY_LIMIT’, ‘256M’);

保存文件并上传。

清除缓存,刷新网站。

注意

如果你使用的是共享主机,可能无法修改此值。

有些主机会覆盖 wp-config.php 的设置。

方法 2:修改 PHP.ini 文件

如果修改 wp-config.php 的方法无效,可以尝试修改 PHP.ini 文件。

步骤:

登录你的主机控制面板(如 cPanel、Plesk、宝塔)。

找到 PHP 设置 或 PHP 配置 选项。

在 PHP.ini 文件中添加或修改以下行:memory_limit = 256M upload_max_filesize = 64M post_max_size = 64M max_execution_time = 300 max_input_time = 300保存设置并重启服务器。

方法 3:修改 .htaccess 文件

如果通过修改 php.ini 文件没有效果,可以尝试调整 .htaccess 文件来解决问题。

步骤:

通过 FTP 连接到 public_html 目录,找到 .htaccess 文件。

在 .htaccess 末尾添加:php_value memory_limit 256M php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300

保存并上传。

注意

如果 .htaccess 文件不可见,需启用“显示隐藏文件”。

如果添加代码后出现 500 Internal Server Error,请立即恢复 .htaccess 备份。

方法 4:在服务器面板调整 PHP 设置

有的托管商提供直接调整 PHP 内存限制的选项。

步骤:

登录主机控制面板(如 cPanel)。

找到 选择 PHP 版本 选项。

进入 PHP 选项PHP 配置

找到 memory_limit 选项,调整至 256M 或 512M。

保存设置。

方法 5:使用 WordPress 插件

如果不想修改文件,可以使用插件调整内存限制。

推荐插件:

WP Memory Usage:可直观显示当前 WordPress 的内存使用情况。

Increase PHP Memory Limit:自动调整 PHP 内存限制。

验证 PHP 内存限制是否已增加

再次回到 WordPress 仪表板,工具→站点健康部分,在“信息”选项卡下的服务器进行检查。

总结

增加 WordPress 内存限制可以有效解决 “内存耗尽” 错误,并提升网站性能。本文介绍了五种可行的方法:

修改 wp-config.php(推荐)

编辑 PHP.ini(推荐)

调整 .htaccess

使用主机控制面板

通过插件调整

如果你仍然遇到问题,可以试试优化数据库、移除不必要的插件,并确保 PHP 版本保持最新。

Leave a Reply

您的电子邮箱地址不会被公开。 必填项已用 * 标注