博客维护笔记

自端午放假后,因为发生的一些事情已有两周没管管博客了,今天上来一看发现各种问题。先是WordPress不知怎么抽风,导致登录循环跳转(以前改好过现在又犯了);然后看Apache 日中发现一对报错,MySQL莫名的进入只读模式;登上博客又看到一堆的垃圾评论,删除都费了一会功夫。哎,杂草丛生喽!

一、关于WordPress登录循环跳转

从资料来看,这是WordPress的老毛病了。查其原因,却没有一篇详细的说明文章,不过看到大多数文章均是归咎于WordPress中一些插件的更新,不过我觉得也有可能是下文中提到的数据库问题。(原谅我不懂PHP)

症状就是在登录界面输入正确的帐号密码后,依然是跳转至登录界面,如此循环使得用户进不了博客的后台界面。需要说明的是笔者WordPress版本是4.7,而之前还是4.6版本的时候这种症状也出现过。

解决方法:网上随便百度能发现一大堆,然而方法都是大同小异。要么就是修改wp-include目录下的pluggable.php中关于cookie设置的代码;要么是修改根目录下的wp-config.php;也有说是修改.htaccess文件的。但是笔者上一次出这个问题确实借助于第一个方法,通过修改pluggable.php文件解决了这一问题。然而这次不知怎么却没作用,试过各种方法没效果。无奈之下用上个月备份的整个博客的Web目录替换了现有的目录,结果自然是没问题了。

经过这么一出倒是庆幸自己有时常备份的好习惯。不过网上也有建议说用Windows Live Writer的,看起来不错之后尝试尝试。

二、MySQL进入只读模式

这个问题还是在Apache的错误日志中查到的。这个问题也可能是造成WordPress登录循环的原因。

由于未开启general_log所以没办法追踪开启read_only的原因。genenral log用来记录数据库运行期间所有成功和未成功的操作。可以修改配置文档,而在我使用MySQL 5.7版本就可以通过修改general_log 和general_log_file这两个变量值,在运行状态下开启日志。不过官方文档里提醒到,说这类日志是一个性能杀手。

2017.07.18 更新

目前已确定WordPress 登录页面循环跳转问题所在:

原因->mysql 处于 read_only 状态导致 登录时操作无法更新数据,造成循环跳转问题。(具体是自己在实验主从复制的时候,设置了从库自启动 read_only )


三、Apache 为正确配置参数导致进程过多

Apache2.4版本下默认开启的多处理模块mpm 是prefork,而其中的一些配置参数的默认值可能不适合像我这样配置低的服务器。(顺便吐槽下Apache官方文档那让人无语的某些滞后)

prefork官方文档 http://httpd.apache.org/docs/2.4/mod/prefork.html

prefock 中文翻译文档 http://www.t086.com/code/apache2.2/mod/prefork.html

其中的如下两个参数需要调整以适用于低配置服务器,当然你若有兴趣也可以按照文档修改成适合的配置。本人Apache 2.4 直接在apache.conf 修改(没什么httpd.conf)

<IfModule mpm_prefork_module>

StartService 5 初始化子进程数

MaxClients 20 最大连接数

MaxSpareServers 6 空闲子进程最大数 默认值10

MinSpareServers 3 空闲子进程最小数 默认值5

MaxRequestsPerChild 500 子进程存在期间总共处理的最大请求数默认0为子进程不自动注销

</IfModule>

 
最后对于垃圾评论,正考虑尝试一些评论插件,也正在找好看的分享插件。欢迎分享 XD

最近在 Leetcode上刷一些题目,接下来也会写一些关于编程算法的博文。推荐喜欢编程或者即将面对招聘的童鞋们也试试。

颓废了两周,得振作起来了 ^_^

觉得不错不妨打赏一笔