WORDPRESS登录页COOKIES被阻止导致反复重定向登录页进不了后台
BUG呈现出的状况:
1. 浏览器地址栏如下:
http://www.ganxb2.com/xb/wp-login.php?redirect_to=http%3A%2F%2Fwww.ganxb2.com%2Fxb%2Fwp-admin%2F&reauth=1
2. 登录窗口错误提示cookies被阻止
3. 在登录页面输入密码和用户名,点击登录,页面跳一下,没提示用户名或密码错误,还是停留在 WordPress 登录页面。但是如果输入错误的用户名或密码,则提示登录错误。
BUG具体处理方法总结如下:
1、 不能正常登陆 WordPress 后台,把路由器去掉,直接插在猫上。
2、 清除 cookies 法。
一种是清除当时所用的浏览器的cookies
一种是打开ie浏览器,工具–internet选项–隐私,然后把安全级别的滑块拉到最下,“接受所有的cookies”,如果可以解决再重新打开恢复默认值。
3、 改 pluggable.php 法:
打开文件 /wp-includes/pluggable.php,修改 wp_set_auth_cookie 函数。
将
setcookie($auth_cookie_name, $auth_cookie, $expire, ADMIN_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
修改为:
setcookie($auth_cookie_name, $auth_cookie, $expire, SITECOOKIEPATH, COOKIE_DOMAIN, $secure, true)
改完关了浏览器重新打开测试。
4、 修改 WordPress 目录下的 wp-config 文件,或者删除重新生成。
加上如下代码:
$home = ‘http://’.$_SERVER['HTTP_HOST']; //
博客首页 $wpurl = ‘http://’.$_SERVER['HTTP_HOST']; //
WP程序的路径 define(’WP_HOME’, $home);define(’WP_SITEURL’, $wpurl);。
5、 换浏览器。IE、搜狗、火狐……
6、 使用地址:域名 /wp-admin/index.php 登录后台。
7、 打开 phpMyAdmin,点开 options,看到自己的 siteurl,值为 http://www.xxx.com/WordPress ,把 www 删掉,再回到 WordPress 的登陆页面,输入用户名和密码。
8、 把主题文件夹里的functions.php中<?php …… ?>之前和之后的空格或者多出的空行删除
根目录下的wp-config.php中的<?php …… ?>之前和之后的空格删除
wp-includes/user.php中的<?php …… ?>之前和之后的空格删除
9、 删除wp-content/plugins文件夹(意思就是揪出BUG是否产生于WORDPRESS插件)
10、 重装wordpress或者旧版手动升级新版
BUG处理思路:
1、 首先小波自己很久未打理博客,所以排除了我自己人为修改文件操作失误导致,所以第8,9处理方法小波自己试过但是最先排除掉。
2、 因为家里网络小波用了无线路由器WDS桥接,所以最早我认为BUG来自于家里网络原因,但是当我自己用手机的数据流量浏览登录一样无法进入后台控制面板,也排除了1号处理方法。
3、 因为小波自己的网站没有报cookies阻止,但是浏览器地址会有一串的代码,分析可能和此相关按第2条方法处理任然BUG依旧毫无进展。
4、 没有找到BUG,小波只能按照找到的处理方法依次测试,修改pluggable.php,删除wp-config重新生成,删除所有的插件,换浏览器,后来我以为是因为前段时间wordpress的cookies严重漏洞导致强制升级版本,所以索性手动升级旧版的wordpress到3.9,方法悉数用尽,但任然是BUG依旧。
5、 最后没办法的办法换了在域名后面加上/wp-admin/index.php目录登入,结果还真进去了,但是没办法保存cookies,一转到前台的页面后,没有以前头部控制板黑条,帐号会自动退出来,每次都要重新输入帐号,而且社会化评论插件也无法进入后台控制面板。
找不到BUG,但是总算缓和了下情绪,至少现在还能有点点希望可以进入后台控制面板,
于是我把原来的<?php wp_loginout(); ?> 调用代码换成了现在静态的指定地址代码
<a rel=”external nofollow” href=”http://www.ganxb2.com/xb/wp-admin/index.php” title=”登录”>登录</a>
第一天各种测试都无法找到BUG,最后只有怀着糟透的心情睡下。
6、第二天因为更新了3.9版本博客变的很卡,然后我查找资料3.5以后wordPress 核心程序和自带主题都调用 Google Fonts 和 Google Ajax 服务。 在处理这个问题之后,我索性把原来用的网络dns加速也给干掉了,最大化减少干扰原因,以揪出BUG。
最后我测试发现竟然成功了,社会化评论插件能登入后台,前台也有控制板的黑条了,cookies也保存下来了。
忙活了两天,最后终于找到问题所致:
可能性是3.5以后的wordpress版本一定要干掉google fonts和google ajax这2个服务