网站首页 > 基础教程 正文
最近看了百度云加速后台的数据报表,发现有很多针对WordPress的攻击,其实就是利用xmlrpc.php文件来攻击。虽然目前站点一切安好,但是据说如果不采取相应措施解决的话,很有可能会被这些攻击导致占用资源过高最终导致服务器宕机。所以我们还是有必要采取一些措施来来减少这种事情的发生。
那么到底XML-RPC到底是个什么鬼呢?XML-RPC的全称是XML Remote Procedure Call,即XML远程方法调用。它是WordPress离线发布协议,如果你习惯使用Windows Live Writer来撰写和发表文章,就必须启用该功能,否则建议您关闭,以免存在安全隐患,让垃圾留言和 Trackback Spam 等有可乘之机。
那么我们应该如何关闭这个功能或解决被他人利用xmlrpc.php文件攻击呢?根据网上搜索的结果,大致有三种办法来解决:
方法一:关闭XML-RPC (pingback) 的功能
我们只需要在主题functions文件中添加以下代码即可关闭XML-RPC功能:
add_filter('xmlrpc_enabled', '__return_false');
如果仅仅想关闭XML-RPC的pingback端口,而不影响第三方离线发表功能,请在functions文件中添加以下代码:
add_filter( 'xmlrpc_methods', 'remove_xmlrpc_pingback_ping' );
function remove_xmlrpc_pingback_ping( $methods ) {
unset( $methods['pingback.ping'] );
return $methods;
}
方法二:通过.htaccess禁止用户访问xmlrpc.php文件
# protect xmlrpc
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
方法三:通过.htaccess文件实现301重定向
# protect xmlrpc
<IfModule mod_alias.c>
Redirect 301 /xmlrpc.php http://boke112.com/
</IfModule>
这个301重定向的目的就是使用户访问xmlrpc.php文件时自动跳转到其他页面,以降低自身网站的负担。建议直接跳转到那些加载东西比较的站点,如淘宝站之类的,让对方访问这个文件时都跳转到淘宝页面,如果他们访问太过频繁有可能会让他们的主机直接卡死哦。
我那个懿古今站点就是通过方法三实现,而boke112导航用的是nginx服务器,我用的是方法二的思路,不过好像不成功,如果有人懂得的话,麻烦告知一声如何设置,谢谢
boke112导航是独立博客死链最少、博主最活跃的个人博客导航站,提供博客导航和博客网站目录分类检索功能,分享WordPress教程、WordPress插件、SEO优化、建站经验、WordPress和zblog等技术文章,力求打造一个最实用的博主交流平台。
猜你喜欢
- 2024-11-27 php安全编程?python暴力破解,论python的牛逼性
- 2024-11-27 CVE-2024-4577 PHP CGI 远程代码执行漏洞分析
- 2024-11-27 使用VS Code调试PhpStudy环境里的代码
- 2024-11-27 Web安全之URL跳转漏洞
- 2024-11-27 01.linux上安装宝塔部署PHP项目
- 2024-11-27 教程 | 从零开始开发一个PHP留言板(三)——页面制作
- 2024-11-27 Nginx 反向代理学习及实例笔记
- 2024-11-27 phpMyAdmin使用教程(图文详解)
- 2024-11-27 CentOS8 安装数据库管理工具之phpMyAdmin5.1.1
- 2024-11-27 WordPress清爽简约型博客主题:Arbitrary
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- deletesql (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)