当我写下这个乘以无穷大时,这就是我的 nginx access.log 的样子:
127.0.0.1 - - [19/Jan/2016:00:59:36 -0500] "POST /xmlrpc.php HTTP/1.0" 499 0 "-" "Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)"
我尝试实施常见的修复方法,似乎是将以下内容插入到我的 functions.php 文件中:
add_filter( 'xmlrpc_methods', 'remove_xmlrpc_pingback_ping' );
function remove_xmlrpc_pingback_ping( $methods ) {
unset( $methods['pingback.ping'] );
return $methods;
} ;
但遗憾的是,上面的代码仍然没有任何作用,我的服务器今天一整天都在这样做。对我来说,这个问题很奇怪,因为 IP 是 127.0.0.1
当前运行 Ubuntu 14 / Nginx / PHP5 FPM / MariaDB / Varnish
答案1
127.0.0.1 当然是内部的。你检查过你的 cron 任务等吗?
对于外部 IP 地址,Fail2Ban 是您的解决方案。您在 Fail2Ban 中匹配这样的日志行,Fail2Ban 会告诉您的防火墙在您指定的时间内禁止该 IP。
Fail2Ban 对 WordPress 的用处远不止于此。它以多种方式保持我的服务器清洁。