乌徒帮技术范儿WordPressWordPress使用 › 使用路由器上网无法登录wordpress后台的解决办法

使用路由器上网无法登录wordpress后台的解决办法

分类:WordPress使用 标签:

在遇到这个问题之前,我竟然对此一无所知。从来未曾想过,使用路由器还会发生不能正常登录wordpress后台的状况。使用的TP-LINK路由器是最老的那种,虽然我一直是拨号上网,然而偶尔特殊需要也用到了路由器,不过今天发现状况了,使用路由器时,不能进入wordpress后台,一旦进入后台地址,就会跳转回登录页面。为此,我谷歌了相关的文章,并将解决办法记录下来。

解决办法主要有下面三种:

1、尝试修改路由器MTU值,将原本的1480的值修改成了576,果然网站可以正常使用了,但网站浏览速度明显变慢。
2、出现这种情况是在进行了路由器软件升级之后,于是尝试下载路由器的其他版本,结果问题解决。(pop测试有效)
3、修改Cookies设置(pop测试有效)

前两种方法我尝试了一下,均告失败,最后只能以第三种方法解决。具体过程如下:

在wp-includes目录下有个pluggable.php文件,打开它修改里面的wp_set_auth_cookie函数,找到如下代码:

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

然后把 ADMIN_COOKIE_PATH 参数改为 SITECOOKIEPATH 即可,然后保存登录。

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

这里有两个问题:

1、为什么会发生路由器不能正常登录wordpress后台的情况?
2、为什么修改ADMIN_COOKIE_PATH即可改变状况?

原因可能有以下几种:

1、路由器发送数据包和一般的拨号上网不同,导致数据包内的数据存在错误,让wordpress发生判断性失误。
2、wordpress内部存放数据机制存在一定的缺陷,不能很好的处理数据接收问题(,这个问题还反映在手机浏览器向wordpress发送数据时)。
3、修改ADMIN_COOKIE_PATH为SITECOOKIEPATH,可以调整cookie存放的路径,使后台cookie存放的路径和全站相同,前台登陆后可以进入后台,可能存在安全隐患(未知,我们可以在其他任何路径使用SITECOOKIEPATH路径下的cookie,保持在线状态)。

不过,到目前为止,我仍然不能确定这个问题的根源,在“打死也不修改wordpress系统文件”的思维定式下,我希望调整自己的路由器来解决这一问题,可惜一直未成功。

参考文献:
http://www.webjx.com/web/cms-19756.html
http://www.hualing001.com/wp/index.php/archives/4
http://www.baidu.com/s?wd=%C2%B7%D3%C9%C6%F7MTU%D6%B5

填写个人信息,赶快回复吧!