最近我的wordpress博客总会出现wordpress重定向循环问题,经常导致google浏览器打不开,最近firefox也出现重定向循环这东西了,立马意识到问题的严重性,更严重的就是修改分页规则没用了,也导致cos-html-cache无法缓存。
页面重定向循环出现的提示是:
此页面重定向不正确
Firefox 检测到该服务器正在将此地址的请求循环重定向。
此问题可能是因为禁用或拒绝 Cookie 导致。
- 我想到了一个问题。打开Wordpress博客时,程序会检测wp-config.php文件是否存在。如果存在将尝试根据配置文件调用数据库,显示网站——排除其他因素,这是网站能正常打开;如果没有,则跳转到安装提示页,安装完毕后,方可正常访问。
- 我的擦想:问题极可能出现在这里,Wordpress是否会设置一个参数X,用于确定安装是否完毕。值为1表示已安装;值为0表示未安装或因其他原因需重新安装。默认X为0,成功安装后X变成1,同时把安装页设置跳转到首页。
- 问题来了,如果0变1失败(比如说因为文件写入错误),访问时,X为0于是系统跳转到安装页提示用户安装,,但这时安装页是被设置跳转到首页的。于是你推给我我推给你。在这来回折腾中,Firefox不耐烦了,恼了,给用户循环重定向错误提示。
- 很遗憾,这种办法我无法确定是否真实——通过对比安装成功的博客文件,我没能把猜想变为现实。附不得言从网上查到的资料:
WordPress3.1循环重定向错误解决办法
- 修改wp-include下的/template-loader.php文件或canonical.php文件。修改起来并不复杂,缺点是内核文件改动,以后升级务必注意。官方没有给出解决办法,于是只好采用这个办法。
循环重定向解决方法一
- 禁用上面代码,解决循环重定向错误
-
禁用上面代码,解决循环重定向错误
-
找到wp-include文件夹下的template-loader.php文件,使用/代码/注释掉第六行和第七行。
if( defined(‘WP_USE_THEMES’) && WP_USE_THEMES )
do_action(‘template_redirect’);
循环重定向解决方法二
-
通过给do_redirect赋值解决wordpress循环重定向
-
通过给do_redirect赋值解决wordpress循环重定向
-
找到wp-include文件夹下的canonical.php文件,使用//注释掉第37行。另起一行加入下面代码。其实也就是把变量$do_redirect的值修改为false。
function redirect_canonical( $requested_url = null,$do_redirect = false ) {
循环重定向解决方法三
找到您的当前主题文件夹下的functions.php文件,在最后加上下面一行代码:
remove_filter(‘template_redirect’, ‘redirect_canonical’);
此方法推荐使用,不会因为wordpress升级而而重新修改
循环重定向解决方法四
插件办法,下载Permalink Fix & Disable Canonical Redirects Pack安装上就ok。
至此,问题全部解决。