如何修复 WordPress 中的无效 JSON 错误
在使用古腾堡块编辑器的过程中,当 WordPress 无法与 Web 服务器通信时,就会出现无效 JSON 错误情况。
今天我们就来介绍如何查找和修复问题。
按照我们的经验,通常可以按照下面的步骤检查:
- 找出简单的事情是否是导致错误的原因。
- 检查您的WordPress URL并在必要时更改它们。
- 调整你的永久链接设置,或者至少重建它们。
- 查看 WordPress 中的站点健康页面以获取有关如何进行的线索。
- 重建您的.htaccess 文件。
文章目录
1. 执行一些简单的步骤来诊断错误
在您深入设置屏幕之前,您需要确保您不是 WordPress 中无效 JSON 错误的原因。但是,请先创建您网站的完整备份,以防您以后需要恢复您的网站。
做好网站备份以后,可以尝试按照下面的步骤依次检查:
- 切换到默认的WordPress主题,检查是否因为主题导致错误。
- 如果您使用Web 应用程序防火墙 (WAF) ,请关闭它。您可能会暂时禁用安全插件。
- 停用所用的WordPress插件,看看是否有一个是导致 WordPress 中无效 JSON 错误的原因。通常问题都是插件问题导致。
- 在编辑器界面,开启浏览器自带的开发者工具,看看是否有什么具体的报错提示。
- 尝试使用经典编辑器插件 Classic Editor,看看你是否仍然可以实现你需要的东西而不会看到错误。有些主题和插件是不兼容古腾堡编辑器的。
- 激活WordPress 的调试模式,你可以看到更多错误信息。
2. 检查您的 WordPress 网址
WordPress网址配置不正确,也是有可能导致无效 JSON 错误的,您需要登录 WordPress 并前往“设置-常规”屏幕:
查看WordPress 地址 (URL)和站点地址 (URL)。在绝大多数情况下,这两个字段的值应该是完全一样的。
按照我们的经验,如果你的网站开启了 HTTPS,但是你没有正确安装SSL证书,或者上面两个字段没有同时设置为 https://
网址,通常就会导致 无效 JSON错误。我们建议检查每个 URL 中的拼写错误,并检查每个 URL 是否使用正确的协议。
进行修复后,保存更改并检查错误。如果它仍然出现,请转到下一个方法。
3. 调整您的 WordPress 固定链接设置
在“设置”页面中,前往“固定链接”页面。您的固定链接结构可能存在问题,这可能会导致 WordPress 中出现无效的 JSON 错误。
这里的解决方案很简单:
- 选择固定链接类型。除非您使用自定义结构,否则请坚持使用【文章名】选项。
- 保存您的更改。这将“刷新”您的固定链接设置,并且应该消除 WordPress 中的无效 JSON 错误。
但是,如果您使用自定义固定链接结构,请确保您使用的标签没有拼写错误或语法错误。即使一个字符不合适也会导致错误,因此请修复您发现的任何内容,保存您的更改,并检查更多问题。
4. 查看站点健康日志以获取线索
WordPress 包含一个方便的屏幕(工具 – 站点健康),可帮助您判断网站的“健康”程度。站点健康页面本质上是一个关键问题列表和建议的改进,以帮助您站点的各个方面。例如,您可以优化性能、进行搜索引擎优化 (SEO)等:
如果您在 WordPress 中遇到无效 JSON 错误,您可能会看到另一个推荐的改进:“ REST API遇到意外结果”。这应该会给您一些关于 JSON 错误所在位置的指示,并且您可以从那里进一步调查。
但是,如果您没有太多阅读此类错误日志的经验,您可能需要联系您的网站开发商或主机商。这样,他们可以告诉您问题与什么有关,以及是否是服务器端的问题。
5. 重建你的.htaccess
文件
如果你的服务器采用的是 Apache 环境,一般在网站根目录下都会有一个.htaccess
文件,它是Apache 服务器的一组配置。
与Nginx不同,Apache 用户可以处理服务器配置。因此,这可能会导致 WordPress 中出现无效的 JSON 错误。
这里最好的方法是重建.htaccess
文件。事实上,您在保存更改固定链接设置时可能已经这样做了,因为在此处保存更改会重新生成.htaccess
文件。
但是,您可能希望自己从头开始创建一个干净的文件,以确保不会引入错误或保留错误。
首先,您需要备份旧的.htaccess
文件。
如果你用的是宝塔面板,可以登录宝塔面板,在 文件 管理界面进入到网站所在的目录就可以看到具体的文件:
或者你可以通过SFTP或FTP访问您的服务器并将.htaccess
文件拖到您的本地计算机上。这是您需要的:
对您的服务器的管理访问权限以及登录凭据。您通常可以在主机控制面板或主机的电子邮件中找到这些内容。
- 合适的SFTP 客户端,例如FileZilla、Cyberduck或Transmit。
- 有关如何使用 SFTP的知识,我们在博客上的专门文章中对此进行了介绍。
您的.htaccess
文件将位于站点主目录的根目录中,过程是将其拖到您的计算机上(并设置为显示隐藏文件):
从这里,在您的计算机上复制,清除内容,然后添加以下内容:
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - E=HTTP_AUTHORIZATION:%{HTTP:Authorization}
RewriteBase /
RewriteRule ^index.php$ - L
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php L
# END WordPress
这是一个默认.htaccess
文件。将其另存为.htaccess,然后再次将其上传到您的服务器,然后检查问题是否已处理。
总结
WordPress 中的无效 JSON 错误很容易理解和修复,此错误的大多数解决方案都与您的WordPress主题、插件、以及服务器的配置设置有关,通常按照我们的建议逐步排查,都可以找到问题所在。
如果还是没有解决问题,建议你联系网站开发者或主机商协助查看,服务器上可能有一些东西不能很好地与您的站点配置配合使用,他们需要对其进行调查。
您是否遭受 WordPress 中的无效 JSON 错误的困扰,我们的解决方案之一对您有帮助吗?在下面的评论部分让我们知道!
拓展阅读:
- 11 个为开发者准备的 WordPress 调试插件
- 如何使用浏览器的开发者工具调试网站
- WordPress 调试模式基本指南
- WordPress 快速入门视频教程48:固定链接设置详解
- 网站管理员和Web开发人员.htaccess入门指南
- 详细介绍 WordPress 配置文件 wp-config.php
- 宝塔面板下运维WordPress网站