常见的WordPress错误

如果你遇到WordPress的错误信息或白屏,不要慌张。很可能有人以前遇到过同样的信息,而且很容易解决。

本页列出了WordPress用户最常遇到的错误,并为修复这些错误提供了起点。在WordPress支持,你还会找到更详细的页面或论坛链接,志愿者会在那里提供帮助。

白色死亡屏幕

PHP 错误和数据库错误都可能表现为白屏,即空白屏,没有任何信息,在 WordPress 社区中通常称为 WordPress 白屏死机(WSOD)。

在采取绝望措施之前,WordPress白屏死机的原因有很多:

  • 一个插件导致了兼容性问题。如果你能进入管理界面,试着停用所有插件,然后逐个重新激活。如果您无法访问您的屏幕,请通过FTP登录您的网站。找到该文件夹并重命名插件文件夹。这样会停用你所有的插件。你可以在常见问题解答中了解更多关于手动停用插件的方法。wp-content/pluginsplugins_old
  • 你的主题可能是问题所在。如果你刚激活新主题或在WordPress网络中创建新网站,就遇到白屏死机,这种情况尤其可能发生。登录WordPress管理界面,激活默认的WordPress主题(例如Twenty Twenty-One)。如果你使用的是WordPress 5.8及以下版本,请切换到Twenty Twenty-One主题,因为Twenty Twenty-Two主题要求5.9及以上。如果你无法访问管理员界面,可以通过FTP访问你的网站,并进入文件夹。将当前主题的文件夹重命名。/wp-content/themes/

WP_DEBUG功能通常会提供额外信息。

内部服务器错误

internalservererror2
内部服务器错误信息

内部服务器错误可能有多种原因。以下是你可以采取的一些方法来解决这个问题:

  • 最可能的问题是文件损坏。用FTP登录你的网站root,并将文件重命名为 。试着加载你的网站,看看是否解决了你的问题。如果有效,请务必访问设置>永久链接并重置你的永久链接。这会为你生成一个新文件。.htaccess.htaccess.htaccess_old.htaccess
  • 试着停用所有插件,看看是不是插件的问题。如果您无法访问WordPress管理界面,请按照以下说明通过FTP停用插件。
  • 将主题切换到WordPress默认的主题(例如Twenty Twenty-One),以消除与主题相关的问题。如果你使用的是WordPress 5.8及以下版本,请切换到Twenty Twenty-One主题,因为Twenty Twenty-Two主题要求5.9及以上。
  • 提高PHP内存限制
  • 试着从全新安装的WordPress重新上传和文件夹。wp-adminwp-includes

建立数据库连接的错误

如果你看到页面显示“错误建立数据库连接”,说明连接数据库存在问题,可能有多种原因。以下是可能的原因和解决方案。

错误的 wp-config.php 信息

“建立数据库连接错误”通常是由于wp-config.php文件出现错误引起的。通过你的FTP客户端访问你的网站。打开门,确认以下内容是否正确:wp-config.php

  • 数据库名称
  • 数据库用户名
  • 数据库密码
  • 数据库主机

了解更多关于编辑的wp-config.php

如果你确定配置正确,可以尝试手动重置MySQL密码

你的主机存在问题

下一步是联系你的网站主机。以下托管问题可能是导致问题的原因:

  • 你的数据库已经达成配额并被关闭了。
  • 服务器宕机了。

联系你的主机提供商,看看这些问题是否导致了你的问题。

网站被攻破

如果你已经检查过错误,并向主机确认了托管问题,那么你的网站可能被黑了。wp-config.php

使用Sucuri SiteCheck扫描您的网站,确保网站未被攻破。如果有,你应该看看“我的网站被黑”。

自动升级失败

有时WordPress自动更新功能会失败。症状包括:

  • 一片空白的白屏,没有任何信息。
  • 更新失败的警告。
  • PHP错误提示。

WordPress 自动升级功能可能因与主文件连接出现故障、升级过程中网络连接问题,或文件权限错误而失败。

要手动更新你的WordPress网站,请参见“手动更新”文章

连接超时

连接超时错误出现在网站试图做超出服务器能力范围的操作时。在共享主机上,内存限制较大,这种情况尤为常见。以下是你可以尝试的一些方法:

  • 关闭所有插件。如果停用你网站上所有WordPress插件后问题就解决了,可以逐个重新激活,看看是哪个插件导致了问题。如果你无法访问管理界面,请阅读如何手动停用插件
  • 切换到默认的WordPress主题。如果你使用的是WordPress 5.8及以下版本,请切换到Twenty Twenty-One主题,因为Twenty Twenty-Two主题要求5.9及以上。这应该可以排除任何与主题相关的问题。
  • wp-config.php增加你的记忆限制。如果你用的是共享主机,可能需要请求主机提供商帮你增加内存限制。
  • 增加php.ini文件中的最大执行时间。这不是WordPress的核心文件,如果你不确定如何编辑,请联系你的主机提供商,要求他们提高你的最大执行时间。请参见下方关于增加最大执行时间的说明。

升级后的维护模式

maintenancemode1

当WordPress更新时,它会自动安装一个文件。升级后,您可能会收到一条提示:“短暂无法进行定期维护。请稍后再来查看。”维护档案可能没有被正确删除。.maintenance

要删除此提示,请执行以下操作:

  1. 使用你的FTP程序登录你的网站
  2. 删除该文件,它会在你的网站根目录中找到。.maintenance

阅读更多关于维护模式问题的信息。

你做了改变,结果什么都没发生

如果你正在更改网站,但浏览器中没有看到这些变化,可能需要清除浏览器缓存。你的浏览器会存储你访问的网站信息。这样你访问网站时加载网站会更快,因为浏览器只需重新加载电脑上存储的信息,而不是重新下载。

如果你对网站做了更改,而浏览器认为这不重要,它会直接从缓存加载数据,你看不到你的更改。解决问题的方法,只需清空浏览器缓存或关闭标签页并重新打开链接即可。

如果你遇到404错误,上传图片时出现漂亮的永久链接和白屏,Apache默认可能没有启用mod_rewrite。Mod_rewrite 是 Apache Web 服务器软件的一个扩展模块,允许实时“重写”URL。这是让漂亮的永久链接能正常运作的必要条件。

WordPress多站点网络通常会遇到这种情况,但也可能发生在共享主机提供商或站点迁移或服务器迁移后。

通过设置>永久链接重置你的永久链接。如果不行,可能需要手动编辑文件。.htaccess

# BEGIN WordPress  
<IfModule mod\_rewrite.c>  
RewriteEngine On  
RewriteBase /  
RewriteRule ^index\.php$ - [L]  
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule . /index.php [L]  
</IfModule>  
# END WordPress

如果你不熟悉编辑文件,请联系你的托管服务提供商,请他们开启mod_rewrite规则。关于漂亮永久链接的更多信息,请参见WordPress手册.htaccess

自定义帖子类型404错误

你可能会遇到404错误和自定义帖子类型的问题。请尝试以下步骤:

  1. 确保你的自定义帖子类型和单个页面名称不相同。如果有,就重新命名单页,包括字条
  2. 登录你的WordPress管理界面,进入设置>永久链接。选择默认的永久链接。保存。然后重新选择你喜欢的永久链接。这样可以清除重写规则,应该能解决你的问题。

关键错误信息

如果你看到“本网站发生了严重错误”的提示。请查看您的网站管理员邮箱以获取说明。“,这表明您的网站存在严重错误,导致WordPress无法正常运行。

首先,查看你的邮箱,看看WordPress是否给你发送了关于错误的任何细节。接下来,在wp-config.php文件中启用调试模式。

启用后,查看 wp-content/debug.log 中的错误日志,找出具体哪里出了问题。

你可能发现的一些常见原因包括插件间的冲突、主题兼容性问题、运行不兼容的PHP版本、内存限制,或者WordPress文件损坏。

具体错误信息

你的错误日志中会出现多种不同的错误。要访问错误日志,你需要开启调试,然后通过FTP找到错误日志。以下信息将帮助您解读一些常见的错误信息。

PHP 错误

以下是一些常见的PHP错误信息。

致命错误与警告

无法修改头部信息——已发送的头部

如果你收到警告说WordPress无法修改头部信息且头部已发送,通常意味着你在开头标签之前或结尾标签后有空格或字符。阅读如何修复已发送头部错误

如果你刚安装WordPress就遇到这个问题,可能是在 中引入了语法错误。这些说明将帮助你修正错误wp-config.php

调用未定义函数

读取未定义函数的错误调用可能意味着 WordPress 插件试图查找代码中不存在或无法访问的文件或数据。原因包括:

  • 尝试自动安装或自动升级插件时出现错误。试着手动安装或升级插件
  • 尝试自动安装或自动升级主题时出现错误。试着手动安装或升级主题
  • 你可能使用的是不兼容的WordPress插件或主题。这可能发生在旧版本的WordPress和新的WordPress插件上,或者你试图在单一站点安装中使用WordPress多站点插件时。升级WordPress以解决这个问题。
  • 你可能在尝试调用一个不存在的函数。检查拼写错误。functions.php

试着停用WordPress插件或更改导致错误出现的WordPress主题。如果你无法在管理界面内操作,可能需要通过FTP手动操作。

允许内存容量耗尽

“允许内存大小用尽”错误意味着你的 WordPress 安装内存不足,无法实现你想要的功能。你可以尝试以下步骤:

  • 提高你的记忆限制wp-config.php
  • 通过编辑来增加你的记忆限制。这不是WordPress自带的文件,如果你不熟悉,建议联系你的网站主机,考虑增加内存限制。php.ini
超过最大执行时间

您可能会收到诸如“超过30秒最大执行时间”或“超过60秒”等提示。这意味着流程完成时间过长,且时间过长。有多种方法可以修复这个错误。

剪辑.htaccess

编辑前一定要先回退。.htaccess

将以下行加到:.htaccess

php_value max_execution_time 60

剪辑php.ini

添加以下内容php.ini

max_execution_time = 60

如果你不确定如何进行这些更改,或者你使用的是共享主机导致无法自行更改,你应联系你的托管服务提供商,要求他们延长你的最大执行时间。

解析错误

语法错误

语法错误意味着你在创建PHP结构时犯了错误。例如,你可以是:

  • 在单行末尾漏掉了A。;
  • 使用卷曲引号。
  • 缺少一个弯曲的括号。

当出现错误时,它会告诉你错误出现在哪个文件(例如),以及代码中大致哪行(不一定是完全相同的行,所以一定要在代码前后检查)。functions.php

出乎意料

如果你收到“解析错误:意外”的错误,通常意味着你忘记包含某个字符。最常见的有:

  • 意外 ‘=’ :你在引用变量时忘记包含 $
  • 意外的“)”:你忘了包含开头括号(
  • 意外的“(’:你忘了包含结尾括号)
  • 意外的T_STRING:你忘了前一行末尾的引号或分号
  • 意外的T_ELSE:你有一个没有开头if语句的else语句

未定义常量的使用

与解析错误类似,“使用未定义常量”意味着你缺少一个字符。可能是以下其中之一:

  • 引用变量时漏掉一个 $
  • 数组键周围的缺引号

数据库错误

以下错误可能会与您的WordPress数据库相关。

错误13 – 无法创建/写入文件

你遇到这个错误的原因有很多。

MySQL 无法创建临时文件。

MySQL 变量被设置为一个无法在使用 PHP 访问 MySQL 时写入的目录。验证这一点时,在命令行输入 MySQL 并输入 。你会得到一长串列表,其中一个会写成:tmpdir = /somedir/(无论你的设置是什么)。tmpdirshow variables

要解决这个问题,可以修改 tmpdir 变量,使其指向可写的目录。

  1. 找到my.cnf文件。在*nix系统中,这通常会在/etc/中。在Windows系统上,查找my.ini
  2. 找到后,用简单的文本编辑器打开,找到[mysqld]部分。
  3. 在本节下方,找到TMPDIR线。如果这行有注释(开头有#),删除#并编辑该行,使其读为:tmpdir = /writable/dir,其中/writable/dir 是你可以写入的目录。有些人用 /tmp,或者你也可以试试 /var/tmp 或 /usr/tmp。在Windows上,使用C:/Windows/tmp
  4. 保存文件。
  5. 通过输入 关闭 。mysqlshutdown -u -p shutdown
  6. 启动MySQL时,进入MySQL目录并输入 。通常 MySQL 目录会在 /usr/local 中,或者在 Linux 系统上有时会在 /usr/ 中。./bin/safe_mysqld &

文件权限不正确

纠正文件权限

如果这些都说不通,而你有人帮你管理系统,把上面的内容给他们看,他们应该能帮你搞清楚。

CREATE 命令拒绝给用户

当分配给数据库的用户没有足够的权限来创建数据库中的列和表时,就会发生这种错误。你需要登录 CPanel 或 Plesk,才能赋予数据库用户足够的权限。

或者你也可以创建一个新用户来分配到你的数据库。如果你创建了新用户,你需要确保它已经更新在 。[wp-config.php](https://wordpress.org/documentation/article/using-cpanel/#editing-the-wordpress-config-file)

错误

这可能是因为:

  • 你在/TMP(无论TMPDIR所在位置)上空间不足,或者,
  • 你的 /tmp 里有太多文件(即使空间很充裕),或者,
  • 你服务器上的缓存已经满了

这是 MySQL 错误,与 WordPress 本身无关;你应该联系你的房东。一些用户报告说在 phpMyAdmin 中运行“修复表”命令解决了这个问题。

错误145

这表明数据库中的某个表损坏或损坏。如果你对phpMyAdmin使用熟悉,可以参考这些修复MySQL数据库表的说明

在执行任何操作前,务必备份数据库

如果你以前没用过phpMyAdmin,或者觉得不舒服,请联系你的网站主机,让他们对你的数据库运行CHECK/REPAIR。

未知柱

未知列错误可能由数据库中缺失的列引起。如果你刚升级了WordPress,可以再手动升级一次。要手动更新你的WordPress网站,请参见“更新”文章

如果你在运行数据库查询时遇到错误,那么你可能通过使用错误的引号符号来识别引号。Stack Overflow 上的这个问题提供了更多细节。另请参阅MySQL文档

资源

© 版权声明

相关文章

暂无评论

none
暂无评论...