WordPress 伪静态规则(IIS/Apache/Nginx)设置方法
今天总结一下 IIS/Apache/Nginx 三种环境下的伪静态规则,希望对大家有所帮助。 检测主机是否支持伪静态的方法:在WP后台 > 设置 >…
目录
您是否搜索有关xmlrpc.php文件以及如何在WordPress中禁用它?本文将解释什么是 xmlrpc.php 以及如何禁用它。
通过标准化系统之间的通信方法,可以通过XML-RPC规范从WordPress环境之外的应用程序与WordPress进行通信。
自诞生以来,该规范对WordPress社区具有重要价值。没有它,WordPress将与互联网的其他部分隔离开来。
但是,xmlrpc.php也有一些缺点。自从xmlrpc.php文件漏洞被发现以来,WP REST API已成为WordPress的重要组成部分。这大大增强了WordPress与其他软件程序的交互方式。
本文的目的是解释什么是 xmlrpc.php,为什么应该禁用它,以及如何禁用它。
本节的目的是回答什么是 XML-RPC PHP?XML-RPC规范可用于WordPress和其他系统之间的通信。
使用HTTP作为传输协议,XML作为编码协议,XML-RPC可以标准化这些通信中使用的协议。
WordPress于2003年从b2博客软件分叉而来,该软件使用XML-RPC作为接口。名为 xmlrpc.php 的文件驻留在系统的根目录中,并包含此功能的代码。即使 XML-RPC 主要已过时,此文件仍然可用。
这是早期版本的WordPress中的默认设置,用于禁用XML-RPC。从版本 3.5 开始,默认情况下已启用它以支持您的 WordPress 移动应用程序和 WordPress 安装之间的通信。
在WordPress版本3.5之前,WordPress移动应用程序只能在您的网站配置XML-RPC的情况下发布内容。这是由于该应用程序未运行WordPress引起的;相反,它使用xmlrpc.php与您的WordPress网站进行通信。
此外,XML-RPC用于WordPress和其他博客平台之间以及WordPress和WordPress移动应用程序之间的通信。
XML-RPC 可用于 pingback 和 Trackback。它还充当Jetpack插件的后端,这使得自托管WordPress网站成为 WordPress.com 的成员成为可能。
由于 REST API 现已集成到 WordPress 核心中,因此我们不再使用 xmlrpc.php 文件。您现在可以使用 REST API 与 WordPress 的移动应用程序、桌面客户端、Jetpack 插件以及其他系统和服务进行通信,而不是使用此文件。
还可以将REST API与更广泛的系统集成,其灵活性大于xmlrpc.php。由于 XML-RPC 已被 REST API 取代,因此您必须在网站上禁用 xmlrpc.php以避免出现问题。
您应该知道,xmlrpc.php 文件可能会向黑客暴露您的 WordPress 站点的启用 XML-RPC 的漏洞,因此您必须禁用它。
在WordPress之外的通信中不再需要使用XML-RPC。如果您希望使您的网站尽可能安全,则应禁用它。
正是出于这个原因,WordPress将始终向后兼容。如果您负责与WordPress网站相关的WordPress插件和主题,则应不断更新它们。
如果您的网站上启用了 XML-RPC,黑客可以将其用作对您的网站发起 DDoS 攻击的工具。他们可以使用 xmlrpc.php 模块生成许多指向您网站的 pingback,这可能会使服务器过载并导致网站关闭。
此外,xmlrpc.php 还会在每个请求中发送身份验证信息,因此黑客可能能够拦截此信息并使用它来尝试访问您的网站。这种暴力攻击可以让黑客执行恶意代码、删除代码,甚至损坏您的数据库。
请点击以下链接访问网站:WordPress XML-RPC Validation Service。
输入域名后,单击“检查”按钮。
如果测试成功,现在将启用 XML-RPC,应立即将其关闭。
由于各种原因,网站所有者可能希望禁用 XMLRPC 功能。您可以使用各种插件(例如禁用 XML-RPC)来执行此操作。
我们解释了如何使用Disable XML-RPC 插件来禁用 XMLRPC 功能。请登录您的WordPress管理面板。
1. 单击插件,然后单击添加新插件。
2. 在搜索框中输入“Disable XML-RPC ”。之后安装禁用XML-RPC插件。
3.激活插件,您就可以开始了。然后,XML-RPC 被禁用。
在这个插件中,你可以找到一个XML-RPC验证器,可以用来检查XML-RPC是否已被禁用。如果已禁用 XML-RPC,则会出现一条失败消息。如果没有,您可以使用此插件禁用它。
REST XML-RPC DATA CHECKER 插件允许您在网站上更细粒度地配置 REST API 和 XMLRPC.php。
安装并激活插件后,单击设置中的“REST XML-RPC 数据检查器”选项卡后,单击 XML-RPC 选项卡。
通过该插件,您可以准确指定在您的网站上启用了 xmlrpc.php 的哪些功能。也可以完全禁用它。插件中还有一个选项卡,允许您控制 REST API(如果您选择这样做)。
如果您不想向您的网站添加其他插件,您可以使用过滤器或 .htaccess 文件禁用 xmlrpc.php。让我们一起考虑这两个选项。
通过使用xmlrpc_enabled筛选器,禁用 xmlrpc.php非常容易。您应该添加此功能并使其在您的网站上处于活动状态:
add_filter( 'xmlrpc_enabled', '__return_false' );
可以将该函数添加到主题的函数文件中。.htaccess文件也可以使用cPanel或FTP进行编辑,具体取决于您是否使用Apache连接到托管服务提供商。
WordPress的__return_false函数返回布尔假条件。此筛选器仅阻止需要登录用户的操作。
必须从所有方法中取消注册它,以禁用 XMLRPC 服务器的所有操作。为了实现这一点,您需要挂接到xmlrpc_methods过滤器。
add_filter( 'xmlrpc_methods', 'betterstudio_remove_xmlrpc_methods' );
function 'betterstudio_remove_xmlrpc_methods( $methods ) {
$methods = array(); //empty the array
return $methods;
}
xmlrpc.php 文件在发出请求时创建一个类 wp_xmlrpc_server 的对象。在 wp-include 文件夹中有一个类文件,其中包含一个名为方法的属性。
方法属性包括可通过 XML-RPC 请求访问的函数名称数组。
当该函数未包含在此数组中时,将返回错误消息。因此,如果您清空数组,则可以放心,您将无法使用任何函数。
使用 .htaccess 禁用 XML-RPC 包括几个简单的步骤。这是禁用xmlrpc.php.htaccess的方法
您可以使用FTP或文件管理器导航到您网站的根目录。
您应该打开 .htaccess 文件。
您需要将以下代码添加到 .htaccess 文件中:
# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
allow from xxx.xxx.xxx.xxx
</Files>
在 Apache/Nginx 中禁用 XMLRPC 也可以是一个简单的过程。应将以下代码添加到 Apache 配置文件中以禁用 xmlrpc.php:
< VirtualHost >
----------
< files xmlrpc.php >
order allow,deny
deny from all
< /files >
< /VirtualHost >
在 Nginx 配置文件中使用以下代码,可以禁用 xmlrpc.php:
server {
-----------
location /xmlrpc.php {
deny all;
}
}
如果要在不同的 Linux 发行版中搜索 XML-RPC 攻击,可以使用以下命令阻止 xmlrpc.php 攻击:
# grep xmlrpc /var/logs/httpd/access.log
# grep xmlrpc /var/logs/apache2/access.log
# grep xmlrpc /var/logs/nginx/access.log
# grep xmlrpc /home/username/logs/access.log
如果前面的命令是在受到攻击的WordPress网站上执行的,您将收到以下输出:
POST /xmlrpc.php HTTP/1.0” 200 674 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)
在几种情况下,启用 XML-RPC 是有利的,以下是其中的一些情况:
但是,应该指出的是,上述批评都不是继续使用 XML-RPC 和 xmlrpc.php 漏洞利用的充分理由。
WordPress拥有它的唯一原因是它是向后兼容的;因此,只有当您使用的是过时的WordPress版本时,您才想使用它。
对于那些希望保持其网站最新并支持最新软件版本的人,应禁用 xmlrpc.php。
此外,您可以使用WordPress测试选项来验证您的网站是否已成功禁止接收XML-RPC请求。
为此,您可以将WordPress移动应用程序下载到您的手机上。此应用程序有Android和iPhone版本可用。在您的设备上安装应用程序后,点击输入您现有的站点地址以开始使用它。
如果您看到此站点上禁用 XML-RPC 服务的错误消息,则已完成。这是一条WordPress xmlrpc.php 403禁止的消息。
XML-RPC规范是在WordPress创建之前开发的,允许与外部应用程序和系统进行通信。此规范中存在多个安全漏洞,这可能使您的网站容易受到攻击。
REST API 允许您的站点与其他程序通信,从而可以毫无顾虑地禁用 xmlrpc.php。如果您希望提高网站的安全性,请按照上述步骤进行操作。
WordPress日记主要承接WordPress主题定制开发、PSD转WordPress、WordPress仿站以及以WordPress为管理后端的小程序、APP,我们一直秉持“做一个项目,交一个朋友”的理念,希望您是我们下一个朋友。如果您有WordPress主题开发需求,可随时联系QQ:919985494 微信:18539976310