北京网络营销外包|畅元互动科技

网站首页 > 知识百科 > 建站知识 >
建站知识

服务器cpu占用100%导致WordPress网站打不开

来源:畅元互动   日期:2016-11-20 17:11
服务器cpu占用100%的情况,相信很多站长碰到过,有时候,我们如果遇到刷流量的,突然某一段时间出现很多流量,就有可能导致cpu占用100%,而使用WordPress网站的朋友,就会出现打不开网站的情况

  服务器cpu占用100%的情况,相信很多站长碰到过,有时候,我们如果遇到刷流量的,突然某一段时间出现很多流量,就有可能导致cpu占用100%,而使用WordPress网站的朋友,就会出现打不开网站的情况,当然,今天我们不说CC攻击这一类的,来看一个由xmlrpc.php文件引起来的原因.

  昨天我的WordPress网站打不开,到平台看cpu占用率达到100%,这样的事情出现过几次,咨询服务器提供商,报out of memory ,内存不够建议我加内存.

  想想不应该,我就一WordPress个人博客,平时每天的ip不过50,一般内存使用率不超过10%。这样突然out of memory,估计是服务器本身有状况.

  首先只能停止httpd看看咯.要是管理界面一直out of memory,停掉httpd服务还是有些麻烦。要是能直接操作主机就好了,可惜我用的是云服务器,所以只能让服务商帮我停掉httpd服务,果然停掉httpd服务服务器就能正常远程了.此时cpu占用不够2%.

  这样基本可以确定是httpd的问题,猜想是被工具了。然后看httpd日志,擦看 /var/log/httpd/wxlccsu.com-access_log文件,翻到最后,果然有异常情况

  

WordPress网站打不开的网站日志

 

  发现太多的xmlrpc.php 访问,于是上网查,发现如下信息:“通过日志看到应该是由于有被攻击利用导致的WEB卡死导致的,原因在于使用的WORDPRESS程序默认xmlrpc.php开启,而被用来DDOS攻击导致占用资源过高.”

  目前可以用到3个方法,第一种是屏蔽 XML-RPC (pingback) 的功能.

  1.通过.htaccess屏蔽xmlrpc.php文件的访问

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

  2.直接在当前主题的functions.php文件中加入以下代码:

add_filter( ‘xmlrpc_methods’, ‘remove_xmlrpc_pingback_ping’ );
function remove_xmlrpc_pingback_ping( $methods ) {
unset( $methods[‘pingback.ping’] );
return $methods;
} ;

  3.同样的是修改.htaccess文件,如果有用户访问xmlrpc.php文件,然后让其跳转到其他不存在或者存在的其他页面,降低自身网站的负担.

# protect xmlrpc
<IfModule mod_alias.c>
Redirect 301 /xmlrpc.php http://example.com/custom-page.php
</IfModule>
 
分享到: