Wordpess REST API 错误排查记录

  • A+
所属分类:计算机技术

最近升级PHP7.4并修复一些语法Warning后,发现WP Statistics出现警告信息。健康检查也发现了REST API报错。各种分析后,终于解决了这个问题。

报错信息

虽然有各种报错信息,但站点整体功能都是正常的。

WP Statistics 警告信息

WP Statistics数据总览中,出现警告提示,但WP Statistics功能正常。

Here is an error associated with Connecting WP REST API
URL无效。
Please Flushing rewrite rules by updating permalink in Settings->Permalinks and make sure the WP REST API is enabled.

通过网上的一些提示,查询REST API发现API也是正常的。

WordPress 健康检查发现的问题

健康检查中也有和WP Statistics类似的报错。URL无效
Wordpess REST API 错误排查记录

REST API遇到了错误

REST API是WordPress及其他应用与服务器通信的一种途径。例如区块编辑器页面,它依赖REST来显示及保存您的页面和文章。

REST API请求因遇到了错误而失败。
错误:URL无效。(http_request_failed)

您的站点不能完成环回请求

环回请求被用来运行计划事件,也被内建的主题及插件编辑器使用来确保代码稳定性。

到您站点的环回请求失败,这意味着依赖此种请求的功能将不能正常工作。
错误:URL无效。(http_request_failed)

分析

设置中的异常

因为网上大多报错都是超时,所以我猜测URL很可能是某个配置信息,所以我查看了Wordpress的常规设置,发现了问题。
WordPress地址(URL)站点地址(URL) 都变空,且无法编辑。
Wordpess REST API 错误排查记录

解决

由此,突然想起wp-config.php这个文件里有个使用相对路径的配置,在升级PHP后,把里面的中文引号改成了英文引号,导致一直没生效的配置生效了。
所以解决办法就是把这两个define注释掉。

/** 使用相对路径 */
#define('WP_HOME', '');
#define('WP_SITEURL', '');

注释掉使用相对路径的配置后,这些报错都没了,问题解决。

总结

没记错的话,使用相对路径应该是之前找的优化文档里的建议。
报错是由于一些插件必须使用绝对路径所以会造成兼容性问题。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: