关于wordpress卡死问题

作者: wencst 分类: Uncategorized,windows 发布时间: 2017-03-26 11:34 阅读: 3,301 次

问题现象

经常关注我博客的朋友们,一定发现我的博客有很久没有更新了,那时每隔一段时间,打开博客时莫名其妙的会跳出如下提示:

pache HTTP Server停止工作

并且端口一直在变,从50000到60000之间一直在跳

网上说法

网上查了很多方法:

1.有的说是内存问题的,解决办法如:http://blog.csdn.net/hayley_liu/article/details/52116816

2.有的说端口问题的,说443或者80端口和现有端口冲突

3.有的说这个服务器已经被黑,成为肉鸡

最后一个说法很可怕,而且我最近一个月非常忙,没时间做处理。

检查方法

在没弄明白到底怎么回事之前,还是先关了服务为妙!!!

所以就是你们看到的,访问域名时,显示服务已经无法访问到服务器了。

今天终于得闲,分析了一下日志、服务器、内存、CPU、TCP连接,包括apache配置文件、PHP配置文件、Windows配置文件等等,终于找到原因了。

日志的现象就是,在无法访问时提示:服务器已经挂掉了,为啥挂掉了?这不等于没说吗!小强,你不要死啊!可是,光喊是没用的!

10:02:19  [Apache]     Attempting to stop Apache (PID: 22152)

CPU、内存均正常,没用飙高现象。进程的CPU和内存也都很正常,可以排除内存问题!

网络问题?查了一下netstat,发现一个很奇怪的现象,就是网络端口一直被占用,TCP连接数持续飙高,可是我对服务器操作是很谨慎的,只开放了某几个端口的对内访问!这里是对外访问的,也就是说,我的wordpress对外一直在传消息,网络流量只出不进,端口也是一直在变化的,难道我的服务器真的成了肉鸡?

查了netstat发现的几个IP地址,美国的,本人与美国没有往来啊,只是以前有几个美国IP攻击我被我封禁了而已!难道他们没有放弃对我的攻击?(此处省略一万字,各种科幻迷可以脑补)

身为程序员的我并没有放弃治疗,虽然我擅长的语言不是php。

于是我发现了一个现象,我的服务访问的端口是50000到60000之间,而对方的IP访问端口是443/80,于是我大胆的用https访问了一下这个IP,https://66.155.40.189/

 

原来可以访问,上去看看是什么玩意!打开了高级,正想添加,心中不免涌出一万句骂人的话!大家自己看:

这尼玛是wordpress官网啊,谁让你访问的?谁让你占我带宽,浪费我流量的?谁让你耽误我正常网站访问的?

处理办法

骂归骂,人家也不容易,还是想想什么原因比较好!

于是想到网站经常会提示什么更新啊,虽然一直没有更新成功过,不过还是一直开着,而更新的网站都是国外的,经常更新会占了很多带宽和流量,并且影响网站正常访问速度。

还是关了吧!在主题的function中增加如下代码(方法是否好用还有待验证):

add_filter('automatic_updater_disabled', '__return_true');    // 彻底关闭自动更新

remove_action('init', 'wp_schedule_update_checks');    // 关闭更新检查定时作业
wp_clear_scheduled_hook('wp_version_check');            // 移除已有的版本检查定时作业
wp_clear_scheduled_hook('wp_update_plugins');        // 移除已有的插件更新定时作业
wp_clear_scheduled_hook('wp_update_themes');            // 移除已有的主题更新定时作业
wp_clear_scheduled_hook('wp_maybe_auto_update');        // 移除已有的自动更新定时作业

remove_action( 'admin_init', '_maybe_update_core' );        // 移除后台内核更新检查

remove_action( 'load-plugins.php', 'wp_update_plugins' );    // 移除后台插件更新检查
remove_action( 'load-update.php', 'wp_update_plugins' );
remove_action( 'load-update-core.php', 'wp_update_plugins' );
remove_action( 'admin_init', '_maybe_update_plugins' );

remove_action( 'load-themes.php', 'wp_update_themes' );        // 移除后台主题更新检查
remove_action( 'load-update.php', 'wp_update_themes' );
remove_action( 'load-update-core.php', 'wp_update_themes' );
remove_action( 'admin_init', '_maybe_update_themes' );

总结

1.遇事冷静思考,虽然没有php的经验,没有wordpress应用经验,不过还是要思考

2.不要盲目相信网上的结论和解决办法,自己看到的才是真的,特别对于这种外来的像wordpress这种

3.积极寻找途径和方法,网络虽不可信,但不要一上来就给自己扣一个肉鸡的帽子,这样除了换网站工具以外没有其他途径了

4.对于程序员,要相信自己的判断和能力,你一定能解决问题的!

如果文章对您有用,扫一下支付宝的红包,不胜感激!

欢迎加入QQ群进行技术交流:656897351(各种技术、招聘、兼职、培训欢迎加入)