从今年10月份开始wordpress服务经常出现429 too many requests错误,包括后台更新和访问wp官网,如下图所示,这是为什么呢?怎么处理呢?有大佬向官方论坛提问了,论坛主持人Jan Dembowski 表示这并不是对任何区域的阻止,这是对 Web 服务器的保护。请稍候再试,您应该没问题。并列出 Nginx 的相关文章,有兴趣的小伙伴可以看看 ngx_http_limit_req_module 这个模块。
通过相关文章我们了解到:
那段时间有中国大陆的流量对 wordpress.org 发起猛烈攻击。
攻击导致其官网 CDN 面向大陆的反代服务器 Nginx 针对该域名自动停摆。
官网有的爱好者并不知道面向大陆的 CDN 所处情况,他们自己能访问所以认为没问题。
解决该问题需要找到 automattic 管理官网的高层,专门为来自大陆的攻击给官网增加CC防御。
所以并不是 WordPress 官网主动封锁了大陆访客,而是 automattic 为官网购买的 CDN 服务器面向中国的停摆了。
目前为止都是去无权管理 WordPress 官网的用户论坛反馈,自然找不到想要的答案。
请愿大家不要做太过头的事情啊!不然被限制了对很多人都不方便!
如何解决429 too many requests错误呢?最简单的方法是爬梯子,你懂的。如果没有呢?还有下面这些方法可以尝试
1、如果你有国外的服务器,登录SSH,通过wget命令下载文件是非常快的,然后再传到想要的地方,ytkah就是这么操作的,哈哈。
2、经测试,目前的nginx 429错误仅仅是使用浏览器访问时出现的,如果想要下载最新版的WordPress(文件包地址https://wordpress.org/latest.zip)或插件,可以通过下载软件(如:迅雷)下载的。(参考文章https://yq.aliyun.com/articles/721789)
3、通过插件来解决。闪电博最近开发了一个插件 Kill 429 ,插件通过优化中国境内服务器访问WordPress数据服务器的网络(实际上就是“爬梯”),解决429报错问题,快速安装WordPress版本、主题和插件更新。点此下载 Kill 429 插件,然后在后台 插件->安装插件 界面上传安装,启用后,就可以正常在线更新WordPress核心、主题和插件了,但是自带的线路可能不太稳定(参考文章https://www.wpdaxue.com/wordpress-org-429-too-many-requests.html)
4、通过插件的形式来下载(参考文章https://www.dujin.org/14327.html),将它保存为一个文件,比如 wpdj-updata.php,上传到 wp-content/plugins 目录(你甚至可以在宝塔该目录下直接远程下载,地址在下面,直接解压激活就可以用),激活,然后更新,更新成功之后停用即可,下次需要更新的时候,再次激活即可。
<?php add_filter('site_transient_update_core', function($value){
foreach ($value->updates as &$update) {
if($update->locale == 'zh_CN'){
$update->download = 'https://img.dujin.org/file/zip/wordpress-zh_CN.zip';
$update->packages->full = 'https://img.dujin.org/file/zip/wordpress-zh_CN.zip';
}
}
return $value;
});
5、最近看到 https://www.wpsilo.com 的博主搭建了一个 wordpress.org 网站镜像,基本上就是wordpress.org的翻版,download,plugins,themes,showcase,文档都做了镜像。国内用户可以通过下面的网址进行访问:
WordPress简体中文站: http://cn.wp101.net
WordPress英文站: http://wp101.net
以上几种429 too many requests错误的解决方法不会很难吧?有遇到同样问题的小伙伴赶紧用起来
最近流行的WP-China-Yes则是一个基于反.向.代.理的方案,并且你可以自己搭建反.向.代.理的源。使用WP-China-Yes让你的wordpress告别429错误
还有我爱水煮鱼大牛写的方法使用自建的 PHP 程序彻底解决 WordPress 429 Too Many Requests 问题。