阻止 xmlrpc.php 在 nginx 中使用,同时使用 Windows Live Writer
Prevent xmlrpc.php from using in nginx and also use Windows Live Writer
我的博客是 运行 在 nginx 上的 wordpress 中。
发现很多DDOS攻击,nginx日志如下
aaa.bbb.ccc.ddd - - [19/Oct/2015:16:11:50 +0900] "POST /xmlrpc.php HTTP/1.0" 499 0 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; http://www.google.com/bot.html)" "-"
我添加的conf文件如下。
location = /xmlrpc.php {
allow (my global ip);
allow 127.0.0.1;
deny all;
access_log off;
error_log off;
}
防止DDOS攻击似乎效果不错。
但是我发现我在使用Windows Live Writer的时候遇到了错误。报错对话框是这样的
http://(my blog)/xmlrpc.php
405 Not Allowed
似乎是 "allow (my global ip)" 和 "deny all" 起作用了,因为 Windows Live Writer 错误消息不是 403 而是 405。但是我找不到任何解决方案。
为了阻止人们滥用 XML-RPC 文件,您可以将以下过滤器添加到主题的 functions.php 文件中:
add_filter( 'xmlrpc_methods', function( $methods ) {
unset( $methods['pingback.ping'] );
return $methods;
} );
我的博客是 运行 在 nginx 上的 wordpress 中。 发现很多DDOS攻击,nginx日志如下
aaa.bbb.ccc.ddd - - [19/Oct/2015:16:11:50 +0900] "POST /xmlrpc.php HTTP/1.0" 499 0 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; http://www.google.com/bot.html)" "-"
我添加的conf文件如下。
location = /xmlrpc.php {
allow (my global ip);
allow 127.0.0.1;
deny all;
access_log off;
error_log off;
}
防止DDOS攻击似乎效果不错。 但是我发现我在使用Windows Live Writer的时候遇到了错误。报错对话框是这样的
http://(my blog)/xmlrpc.php
405 Not Allowed
似乎是 "allow (my global ip)" 和 "deny all" 起作用了,因为 Windows Live Writer 错误消息不是 403 而是 405。但是我找不到任何解决方案。
为了阻止人们滥用 XML-RPC 文件,您可以将以下过滤器添加到主题的 functions.php 文件中:
add_filter( 'xmlrpc_methods', function( $methods ) {
unset( $methods['pingback.ping'] );
return $methods;
} );