一直被这个问题所困扰着:我的wordpress登陆不了后台,提交用户名密码之后又返回登陆界面,就这样死循环着不能进入后台控制板。 更为诡异的是,这种情况仅仅出现在使用无线路由的时候!

这是为什么呢?

这就排除了由于存在网络差异而导致的登录不可达。最后,只能把这种现象解释为有线与无线之间的矛盾。

解决方法 打开文件”/wp-includes/pluggable.php“,修改wp_set_auth_cookie函数。 将(两处,第一处在666行左右,第二处就在后面几行,基本上改第一处就可以了,wordpress 2.9.2;wordpress 3.0 在691行) wordpress3.9.0在862行

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);

最后建议:初级用户查找的时候,最好搜索

setcookie($auth_cookie_name, $auth_cookie, $expire, ADMIN_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);

找到第一个修改就好。找上面那个函数名,看代码还是有点麻烦。 我的修改:

do_action( 'set_logged_in_cookie', $logged_in_cookie, $expire, $expiration, $user_id, 'logged_in' );

setcookie($auth_cookie_name, $auth_cookie, $expire, PLUGINS_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
/* 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);
setcookie(LOGGED_IN_COOKIE, $logged_in_cookie, $expire, COOKIEPATH, COOKIE_DOMAIN, $secure_logged_in_cookie, true);

 
一直被这个问题所困扰着:我的wordpress登陆不了后台,提交用户名密码之后又返回登陆界面,就这样死循环着不能进入后台控制板。 更为诡异的是,这种情况仅仅出现在使用无线路由的时候!我在家里、在寝室使用的分别是铁通、校园网的有线链路,只有在实验室利用实验室提供的无线校园网登录后台的时候,登录页面便进入死循环。这就排除了由于存在网络差异而导致的登录不可达。最后,只能把这种现象解释为有线与无线之间的矛盾。