IE 不正常显示 WordPress 404 错误页面

突然发现在 IE 下面 WordPress 的 404 页面不起作用了,而 FireFox、Opera 正常。

按照微软的说法:当网站的 404 错误页面小于 512 字节时,IE 不会显示网站定义的错误页面,取而代之显示 IE 缺省的友好 HTTP 错误信息。很显然,我的 404 页面不可能小于 512 字节。既然 FireFox、Opera 都正常,那问题肯定出在 IE 身上了,我判断是 IE 解析服务器返回的 404 页面时出了问题,导致 IE 认为服务器返回的页面大小不足 512 字节,因而显示了自身的错误页面。

为了防止 UTF-8 字符集网页在 IE 上会出现显示空白问题,通常我们都会把设定字符集的 meta 标签置于 title 标签之上,所以我修改了 K2 主题,没想到反而出了问题。当我把 meta 重新置于 title 之下时,IE 又可以显示 WordPress 的 404 页面了。查看 404 页面源代码发现头部多出一个空行 (K2 模板有些书写不“规范”)来,去掉空行,404 页面又不显示了。后来又发现将 meta 重新置于 title 之上,404 页面又显示正常了。

让朋友测试,朋友表示他那里 IE 正常显示了 WordPress 的 404 页面,我更晕了。更有意思的是本机测试一切正常。至于到底是什么原因,暂时也没搞清楚。

反正我是彻彻底底被 IE 玩弄了一番。

UPDATE at 2008.3.14
发现在 WordPress 后台打开 gzip 压缩选项,404 页面居然在 IE 下显示正常了。

7 thoughts on “IE 不正常显示 WordPress 404 错误页面

  1. Pingback: 让 GZIP 与 cos-html-cache 共存 - 睡到25点

  2. 棕狐

    还是被转义

    《?php ob_start(); ?》
    《?php header(“HTTP/1.1 404 Not Found”); ?》

    自行把 《换成<

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *