为什么WordPress面对404攻击会如此脆弱

 我来答
匿名用户
2016-09-08
展开全部

要弄清楚这个问题,首先要明白Wordpress的工作原理。

安装Wordpress系统时Wordpress自动添加的配置。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

从配置可以看出,所有的用户请求都会转向给index.php文件处理,这个index.php会做哪些事情呢?它会分析用户请求的url的结构模式/组成部分,判断是什么类型的请求(post,page,tag, catagory,archive等),分析出请求目标后,Wordpress会到缓存里找这些资源,如果找到了,就返回用户。如何缓存里没有找到,它就会到数据库里寻找,然后用PHP引擎生成相应的页面资源。

如果用户请求的是一个不存在的404资源呢?那么,Wordpress的执行过程一步都没有少:先找缓存,在找数据库,数据库还是没有,生成404页面。

在这里我们就会发现,对于所有的404请求,缓存里必然没有,Wordpress每一次都会到数据库里全库搜索。这是一个非常消耗数据库服务器和web服务器性能的操作。大量的404查询比如对服务器产生严重的影响。

使用Wordpress作为内容管理系统的站长都知道一种必须要有的插件,就是缓存插件。最著名的一个缓存插件是W3 Total Cache,在W3 Total Cache里面有一个选项能部分的解决这个问题:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2016-09-08
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式