A-A+

wordpress主机cpu占用高甚至100%问题的解决方案

2019年07月31日 网管技术 暂无评论 阅读 394 views 次

wordpress网站好是好,就是有一点很不好,wordpress的主机经常会被cpu占用高或者是cpu100%的问题所困扰,其实究其根源,主要还是跟wordpress的市场占有率高、通用性强有关系,所谓枪打出头鸟,这么好用的平台,会招致很多人再研究它甚至攻击它,其实大多数的wordpress主机运行缓慢甚至主机经常当机瘫痪的原因大都来自于攻击。

小度想过很多方法,包括wordpress的优化、外设网络防火墙等措施,发现效果并不好,特别说说加网站防火墙,虽说每月花钱购买防火墙服务可以有效阻挡一部分来自外部的网站攻击,但是也有坏处,比如说还有很多攻击的IP特征上未被发现为攻击,这种漏网的攻击一样可以让你的wordpress主机空间瘫痪,无论我们购买的是共享虚拟主机还是独享虚拟主机,其实服务商给你分配的资源都是有限的,包括内存、cpu等,像小度用的阿里云的独享主机,貌似不错了吧,但遇到攻击一样会挂,所以我已经放弃了使用花钱更多又解决不了大问题的外购waf防火墙的方案。

经过一段时间的经验积累和实测,发现最好的方法还是搞IP地址动态跟踪及屏蔽的方案。

具体方案如下:

针对wordpress网站空间,屏蔽IP地址之前首先要锁定要屏蔽的目标,以阿里云空间为例,进入主机的控制台页面,如图

阿里云主机空间访问日志

阿里云主机空间访问日志

点击流量状态-访问统计报告-查看报告,可以在报告中找“主机”前十的IP访问,如果你的网站空间不稳定,一般都跟这十个IP有很大干系,这就是你要准备屏蔽的ip源。

第二,屏蔽IP地址的方法在小度的上一篇文章中已经介绍,这次真的wordpress网站再精准的加以说明,就是要通过.htaccess进行屏蔽IP,具体的语法如下:

# 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
Order Allow,Deny
Allow from all
Deny from 154.85.201.10 ##输入要屏蔽的IP地址
Deny from 154.81.86.42 ##输入要屏蔽的IP地址
Deny from 112.34.110 ##输入要屏蔽的IP地址段
Deny from 47.105.213.110
Deny from 47.96.146.106
Deny from 39.107.231.166

要注意一下,# BEGIN和# END之间的语句是wordpress网站配置过固定链接后自动生成的,千万不要乱动,否则会出现内文404或500错误,只需从Order Allow,Deny 这句话开始编写就可以了。

最后,这种IP地址动态跟踪及屏蔽的方案其实并不复杂,当你发现某天你的网站访问很慢或者打不开了,马上可以按小度之前说的步骤去检查日志中IP前十,及时屏蔽就可以了,小度目前就是这样运营维护自己的网站空间的。

给我留言

Copyright © 度娘搜搜 保留所有权利.   鲁ICP备15005183号-1

用户登录

分享到: