好长时间没使用百度统计中的网站速度诊断功能了,自从今年升级到 WordPress3.3.1 后,总是感觉网站速度变慢了。但一直未在意,以为是服务器本身的原因导致的!今天在百度统计中使用网站速度诊断功能的时候发现,博客出现了无数的 302 重定向,原因是当 WordPress 升级时,多少有时会出现失败的情况或者加载不正确的地方,这也是在所难免的。

一、使用百度统计中的网站速度诊断功能出现的 302 重定向截图:

二、出现的 302 重定向的解决方法:

解决方法一:

修改 wp-include 下的/template-loader.php 文件,修改起来并不复杂,缺点是内核文件改动,以后升级务必注意。官方没有给出解决办法,于是只好采用这个办法。

找到 wp-include 文件夹下的 template-loader.php 文件,使用//注释掉第六行和第七行。

if ( defined('WP_USE_THEMES') && WP_USE_THEMES )

do_action('template_redirect');

修改为:

//if ( defined('WP_USE_THEMES') && WP_USE_THEMES )

//do_action('template_redirect');

解决方法二:

通过给 do_redirect 赋值解决 WordPress 循环重定向

找到 wp-include 文件夹下的 canonical.php 文件,使用//注释掉第 37 行。另起一行加入下面代码。其实也就是把变量 $do_redirect 的值修改为 false 。

将 canonical.php 文件,第 37 行

function redirect_canonical( $requested_url = null, $do_redirect = true ) {

修改为:

//function redirect_canonical( $requested_url = null, $do_redirect = true ) {

增加:

function redirect_canonical( $requested_url = null,$do_redirect = false) {

修改后截图:

解决方法三:

插件办法,下载 Permalink Fix & Disable Canonical Redirects Pack 安装上就 ok 。