WP TOOLS

EP07. “数据库与内容显示类错误速查”

首页 建站工具 Builder · WordPress
约 12 分钟·
🔒 登录后可标记已读

这篇笔记速查网站内容显示异常、数据库连不上、白屏这类错误的成因和解法。500 Internal Server Error 已独立成篇,这里收录的是「网站还能打开、但内容显示不对/局部功能坏掉」这类问题。

重点内容


语法错误 / Parse Error

代码里有语法错误(常见于 functions.php),出现的提示会明确标注问题所在的文件和行数,比如:

Parse error- syntax error, unexpected $end in /public_html/site1/wp-content/themes/my-theme/functions.php on line 278

修复步骤:

  1. 用 FileZilla 之类的 FTP/SFTP 工具连上网站
  2. 找到提示里指出的文件(通常在当前主题文件夹里),右键选 View/Edit
  3. 找到提示的那一行代码,多数是漏了括号或多余字符
  4. 保存文件,FTP 询问是否覆盖服务器上的文件时选 Yes

💡 想避免以后再犯,用 WPCode 这类插件——它会在保存代码片段前先验证语法,防止直接把网站弄坏。


死亡白屏(White Screen of Death, WSoD)

整个网站变成空白页面,没有任何错误提示,是最难排查的错误之一——因为没有任何线索能判断该从哪里下手。多半是 PHP 内存耗尽或服务器配置问题,也可能只出现在网站的特定区块。

排查顺序:

  1. 禁用插件——WSoD 最常见的元凶就是有问题的插件,全部停用测试
  2. 禁用主题——用 SFTP 把主题换成 WordPress 默认主题测试
  3. 开启 WordPress Debug 模式——能直接在页面上看到具体错误信息
  4. 清缓存——就算问题已经修好,缓存插件仍可能让你看到过期的旧文件
  5. 提高内存限制——改 php.ini 调高内存上限

以上方法解决大多数 WSoD 情况;仍无法解决就要联络主机支援团队。


建立数据库连接时出错(Error Establishing a Database Connection)

网站连不上数据库,通常是用户手动填错/改错了数据库凭据(host、用户名、密码),偶尔是数据库服务器本身无响应或损坏。

排查步骤:

  1. 用 SFTP 找到根目录的 wp-config.php,右键 View/Edit
  2. 到 phpMyAdmin 核对正确的数据库主机名、用户名、密码、数据库名称,跟 wp-config.php 里的是否一致,不一致就替换更正
  3. 如果核对没问题错误仍在,可以在 wp-config.php 加入一行启用自动数据库修复工具:
define( 'WP_ALLOW_REPAIR', true );
  1. 保存上传后,浏览器访问 https://你的网址/wp-admin/maint/repair.php 运行修复脚本,点按钮执行修复,页面会显示修复完成的数据表清单

[截图:repair.php 数据库修复页面,修复完成后列出的数据表清单]

  1. ⚠️ 修复完成后别忘了把 WP_ALLOW_REPAIR 这一行从 wp-config.php 删掉,不然这个修复入口会一直暴露在外面

WordPress 文章出现 404 错误(但后台正常)

访客点单篇文章出现 404 Not Found,但网站其他部分(包括后台)都能正常访问——最常见成因是固定链接(permalink)设置或 rewrite rules 出问题

修复方法:

  • 后台 Settings → Permalinks,什么都不改直接点 Save Changes,重新生成 .htaccess 规则
  • 如果还不行,手动检查/替换 .htaccess 内容为默认规则(详见《500 Internal Server Error 完整解决指南》里的 .htaccess 代码片段)

侧边栏跑到内容下方(Sidebar Below Content)

侧边栏本来该显示在内容旁边,却跑到了内容下面——通常是主题的 HTML/CSS 出问题,常见于最近编辑过主题代码或加过自定义代码片段之后。

排查重点两处:

  • 多余的 <div> 标签:没有正确开启/关闭的 HTML 标签会破坏排版
  • CSS 页边距(margin)不正确style.css 里的页边距设置错误,侧边栏旁边就没有足够空间

💡 可以用 W3C 标记验证服务检查页面代码,帮助更快定位问题来源。


混合内容错误(Mixed Content Error)

网站已启用 HTTPS/SSL,但部分资源仍用 HTTP 网址加载,导致浏览器报错——虽然不一定影响网站功能,但会影响 SEO 和用户体验

修复方法:找出哪些资源用了不安全的 HTTP 网址加载,逐一改成 HTTPS——可以用插件自动处理,也能手动修改。


错过定时发布(Missed Schedule Post)

排程发布的文章到了时间却没有自动发布,卡在后台变成「Missed schedule」。

成因:负责触发发布动作的「cron job」在该文章排定的时间点没有被正确触发。

解决办法:安装 Scheduled Post Trigger 这类免费轻量插件,确保负责发布排程文章的 cron job 能按时正常运作。


因维护模式卡死网站(Briefly Unavailable for Scheduled Maintenance)

WordPress 更新时会自动把网站切换到维护模式;如果更新过程被中断,网站可能会「卡」在维护模式,前台后台都打不开。

解决办法:用 SFTP 连上网站根目录,删除名为 .maintenance 的文件,网站会立刻恢复正常——但要记得手动重新执行一次刚才被中断的更新。


网站出现「严重错误」提示(There Has Been a Critical Error on This Website)

WordPress 遇到致命错误导致网站打不开时显示的提示信息,比传统的死亡白屏更友善,但背后问题依然严重。

成因:插件/主题损坏、自定义代码片段出错、或 WordPress 核心文件损坏。幸运的话 WordPress 会发邮件带一个 Recovery Mode 连结,能直接进后台修复模式排查。

解决办法:需要 debug 定位问题、停用有问题的插件/主题、检查网站错误日志(做法参照《500 Internal Server Error 完整解决指南》里的 Debug Log 方案)。


内存耗尽错误(Memory Exhausted)

可能表现为死亡白屏,或明确的错误信息:

Fatal error: Allowed memory size of 33554432 bytes exhausted...

成因:某个脚本或插件超过默认分配的内存上限。

解决办法:调高 PHP 内存限制,具体步骤见《500 Internal Server Error 完整解决指南》方案 6。


最大执行时间超过限制(Maximum Execution Time Exceeded)

WordPress 用 PHP 写成,为了防止服务器被滥用,PHP 脚本的运行时间有上限——不同主机商设置的上限高低不同,脚本一旦超过这个上限就会报这个错。

解决办法:调高 PHP 的 max_execution_time 设置(跟内存限制一样常需要联络主机商或改 php.ini)。


保存/发布失败(Updating Failed / Publishing Failed)

编辑文章/页面时看到「Updating Failed」或「Publishing Failed」,通常代表 WordPress 连不上 REST API(区块编辑器靠这个 API 在背景跟服务器通信)。

常见成因:网站网址设置错误、插件冲突、.htaccess 或服务器设置问题、主机商拦截了 REST API 请求。

排查方法:检查网站网址设置(见《修改网站 URL 的四种方法》)、暂时停用插件测试、确认 REST API 端点没有被安全插件拦截。


网站没有即时显示最新改动

改了内容但网站前台看起来没变化,最常见原因是缓存——浏览器或缓存插件暂存了旧版本的页面。

解决办法:清除浏览器缓存和网站的缓存插件缓存,重新加载确认。

常见误区

  • ❌ 死亡白屏(WSoD)没头绪就整个重装 WordPress——按顺序先排查插件、再排查主题、再开 Debug 模式看具体错误,通常不需要重装
  • ❌ 数据库连接错误改完 wp-config.php 凭据后忘记删除 WP_ALLOW_REPAIR 这行——修复完成后要记得移除,不然这个修复工具入口会一直暴露
  • ❌ 网站卡在维护模式就直接重新安装 WordPress——只是删掉根目录的 .maintenance 文件就能恢复,不用做到重装这么大动作
  • ❌ 排程文章常常错过发布时间,每次都手动处理——装 Scheduled Post Trigger 这类插件,从根本上解决 cron job 不稳定的问题
  • 💡 内容没有即时更新,先怀疑是缓存问题——清缓存往往比检查代码更快找到答案

Sources

Blog / Website:

  1. 63 Most Common WordPress Errors and How to Fix Them — https://www.wpbeginner.com/common-wordpress-errors-and-how-to-fix-them/
  2. WordPress常见错误12个及解决办法 — https://www.wbolt.com/common-wordpress-errors.html

官方文档:

  1. Common WordPress Errors — Advanced Administration Handbook(developer.wordpress.org)