WordPress缓存插件导致admin-ajax.php 403的解决方案

 2023-11-30 07:13:59  222 浏览  0 评论   赞

怎样确定 admin-ajax.php 403 是不是因为缓存插件导致的呢后台缓存插件中清空缓存,然后到浏览器中随便访问网站的一个页面,f12 打开调试模式

admin-ajax.php 是 WordPress 用于Ajax请求的必需文件,在使用缓存插件的情况下,如果你的网站使用了Ajax请求网站数据,可能会时不时出现 admin-ajax.php 403 的情况,如下图所示:

WordPress缓存插件导致admin-ajax.php 403的解决方案

图76243-1:

怎样确定 admin-ajax.php 403 是不是因为缓存插件导致的呢

后台缓存插件中清空缓存,然后到浏览器中随便访问网站的一个页面,f12 打开调试模式。

ctrl + F5 强制刷新前台页面,发现 admin-ajax.php 可以正常加载,说明是缓存导致了问题。

联想到通常使用ajax时,我们都会使用 WordPress 内置的Nonce机制来添加请求安全验证。如果Nonce的值失效了,但是缓存仍在,就会出现请求被拒绝。

nonce 的默认有效期为24小时,所以,解决该问题的办法就是定时清空缓存,或者不要缓存admin-ajax.php请求。

比如,如果你使用的是 WP Rocket 缓存插件,可以将 /wp-admin/admin-ajax.php 添加到排除路径中:

WordPress缓存插件导致admin-ajax.php 403的解决方案

图76243-2:

如果使用的是 WP Fastest Cache 或 WP Super Cache 等缓存插件,可以设置一个时间自动清空缓存,比如 WP Fastest Cache 可以在【删除缓存】选项卡按照下图添加一个规则:每10小时清空一次全部缓存。

WordPress缓存插件导致admin-ajax.php 403的解决方案

图76243-3:

其他缓存插件就不介绍了,总之就是找到自动清理缓存的设置选项,设置自动清理缓存的时间不超过12小时,应该就可以了。

文章最后一次修改于2021年3月25日 18:36:20 Wordpress缓存Wordpress缓存插件

作者:白天,转载请注明出处:https://www.seobti.com/2961.html

 

转载请注明:网创网 www.netcyw.cn/b76243.html

()
发表评论
  • 昵称
  • 网址
(0) 个小伙伴发表了自己的观点
    暂无评论

Copyright © 2018-2022 小王子工作室 版权所有 滇ICP备14007766号-3 邮箱:yangzy187@126.com