WordPress EXP
分享10年建站经验

WordPress 站点中禁用 XML-RPC

XML-RPC 是在 WordPress 3.5 中添加的,通过标准化系统之间的通信方法,可以通过 XML-RPC 规范从 WordPress 环境之外的应用程序与 WordPress 进行通信(允许远程连接),除非您使用移动设备发布到 WordPress,否则它弊大于利。事实上,它可能会使您的网站面临一系列安全风险。有一些插件利用了这一点,例如 JetPack,但出于性能原因,不建议使用 JetPack。

本文的内容是解释什么是 xmlrpc.php,为什么应该禁用它,以及如何禁用它,可以用什么方式禁用它,检测是否已经禁用它。

插件禁用 XML-RPC

支持一键禁用 XML-RPC 功能的插件

  • perfmatters
  • WPJAM

此类插件安装后勾选禁用 XML-RPC 即可。

服务器禁用 XML-RPC

注意:使用这个方法,可能需要将 JetPack 等服务或使用 XML-RPC 的其他解决方案列入白名单。

Nginx 禁用 XML-RPC

如果使用的是 Nginx Web 服务器,请将以下代码添加到 Nginx 配置中。

location ~* ^/xmlrpc.php$ {
deny all;
}

Apache 禁用 XML-RPC

如果使用的是 Apache Web 服务器,将以下代码添加到.htaccess文件中。

<Files xmlrpc.php>
Order Allow,Deny
Deny from all
</Files>

防火墙禁用 XML-RPC

以宝塔 Nginx 防火墙为例,可在 URL 黑名单中添加下方链接,这样将会拦截 XML-RPC 功能。

/xmlrpc.php

而处于宝塔 Nginx 防火墙 IP 白名单的状态下可绕过拦截直接使用(IP 白名单优先级高于 URL 黑名单)。

CDN 禁用 XML-RPC

同样,在 CDN 或解析级防火墙层面中,针对/xmlrpc.php进行拦截、验证处理即可。

而这样的处理当处于 Hosts 回源时(参见《通过 Hosts 回源绕过 CDN 防护进行排查 Wordpress 问题》)可以直接使用 XML-RPC 功能。

验证 XML-RPC 是否禁用

您可以使用此免费的 WordPress XML-RPC 验证服务验证 XML-RPC 是否已禁用。如果您遇到如下错误,那么您就可以开始了。

赞(1) 付款
转载请注明来源及链接:WPEXP » WordPress 站点中禁用 XML-RPC

若无法完成服务,承诺全额退款!

WPEXP 感谢你的信任,让我们一起创建更好的 WordPress 站点!

支付宝扫一扫打赏

微信扫一扫打赏