WordPress2.5 Error 500解决方法

4月23日,我报告过《WordPress2.5 Error 500》:

在发布Blog内容时经常会出现Error 500错误:

Error 500 – Internal server error

An internal server error has occured!
Please try again later.

这种情况我遇见过多次,今天看到王佩也报告了类似的事情。根据我的个人经验,这种情况发生于在线编辑帖子的时候。如果帖子并没有立即发布,而是点击了右侧的“保存”,那么再点“发布”,就会发生500错误。为什么会这样,我不知道。希望在WP2.5.1里能够解决这个问题。

今天,专业程序员卡飞菲已经提供了一个错误分析和解决办法。错误原因是:

post_name 中的的多字节文字被 urlencode 成这样 “%e6%88%91%e6%93%8d%ef%bc%81″,只要 % 后面跟了 bcdeufFosxX 中任意一个(覆盖了大半个中文区域),就造成 vsprintf 函数调用失败,返回 false,而上层的循环一直在等它返回一个非false的值,直到程序死掉。

我基本不懂,他提供了一个修改代码和一个上传文件的方法来解决这个问题,请移步到他的Blog学习、下载:

Bug分析和解决办法

我将持续关注此事进展。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.