转:路由器导致wordpress死循环无法登陆,不断返回登陆界面
之前发现的关于WordPress的妖怪问题,终于在Google之下找到了原因和解法,虽然只是一个临时解决办法,但还是相当有效,不然就没有这篇转贴了。以下为转贴原帖的主要部分。
问题回顾
“通过无线路由上网,无法登陆wordpress后台,症状为输入用户名密码之后仍旧返回登陆界面。当然以前是好的,换任何浏览器和操作系统都一样,并且在别人电脑上是没问题的。(wordpress 2.9.2,wordpress 3.0)”
解决方法
打开文件”/wp-includes/pluggable.php“,修改wp_set_auth_cookie函数。将(两处,第一处在666行左右,第二处就在后面几行,基本上改第一处就可以了,wordpress 2.9.2;wordpress 3.0 在691行)
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);后话
主要就是更改cookie的作用目录,由原来的“/wp-admin”变成根目录“/”。问题大概是由于无法跨目录读取用户的cookie导致的(参见pluggable.php中的函数wp_parse_auth_cookie)。
