blog故障日志

最近mysql都不是很稳定,所以blog没法访问我也没在意。

回来后,发现mysql可以读取,但php不能get参数。查了点资料,用phpspy察看了一下环境变量,果然php.ini的register_globals变成off了。
sigh,也怪写php时犯懒没用_GET[]...教训啊,现在受php.ini的气。我又懒得和弄服务器的人废话(又和我扯安全性...),难道我就要全改成_GET[]???

还好,查到这样一句,可以把_GET[]之类的自动导成全局,放到config里面一include就完事了。哈哈,看来像我这样的懒人还是有不少...
import_request_variables("GPC");
如我所料,一切恢复正常。

可是blog的问题还是没有解决,症状是白页,就像网页还没有下载完(进度条停在中间),似乎服务器端的php在死循环。没办法,从index.php开始,注掉代码逐渐恢复的方法来查,这可是wordpress啊,天知道我要查到哪里才是头?还好,才include了几个php就出现了问题。最后锁定到wp-db.php的function query($query)。晕死,所有访问数据库可都是这个函数,原来好好的也没人动怎么会出事?

罪魁是这句:@mysql_fetch_field($this->result);函数死在这里怎么也不返回了。还好,整个wordpress也都没用到察看数据表的field名(天知道他写这句干什么,可能为以后升级准备吧)。果然,注掉获取field信息的这一段循环,blog就活了。

后来,索性趁热打铁把wordpress升级到了2.0.3,换了大名鼎鼎的k2,一个k2_mod的清新theme,自己做了个logo,然后装了个据说好用的Sidebar Widgets Plugin。接下来就是烦人的调整,改CSS,调sidebar(插件根本不好用,还得自己写代码,除了那个动态的拖曳比较酷)……

弄了一天才算基本搞定。同时,还发现2.0.3的一个bug,友情链接的分类管理中的“格式”不管用!看了links.php才发现根本没写在代码里,看来2.0.3出来还真是匆忙(记得2.0.1里面没这个功能),改两句话,一切OK。

仔细想想,估计是服务器进行了升级(包括php和mysql),造成运行不稳定(来回调参数:()。mysql_fetch_field可能是管理员限制了数据库的权限吧,可是也没有死循环不返回的道理啊,看来要追究php4-mysql模块的责任:)

总之,现在一切问题都基本解决了,还真是麻烦。以后要注意经常备份数据库!要不然,服务器挂了哭都来不及...

随机文章:

blog故障日志》上有 2 条评论

  1. 哇!mm好厉害哦~~崇拜ing……
    复活万岁~~以后要经常更新哦:)

发表评论

电子邮件地址不会被公开。

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>