http://mingming4745.blog.163.com/blog/static/173845720119159425890/?suggestedreading
————————————————————————————————————————————————————————————————————————————————
亲自试过,解决了自己网站的问题,因此转过来与饱受困惑的战友们分享。原文链接:www.zhuiai8.com
WordPress无法登陆后台,输入用户名、密码之后仍旧返回登陆界面,死循环的问题
症状为:无法登陆wordpress后台,输入用户名密码之后仍旧返回登陆界面。
(版本wordpress 3.0)
网上有各种各样的解决方法,我都试过了,但是很可惜没用。诸如:1.修改字符编码法,或set names
utf8法;2.检查wp_options表法,又又名wp_user_roles法;3.清除cookies法;4.最差劲要数重装
wordpress,貌似重装也不能解决问题。
真正的解决方法:
打开文件”/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)。
————————————————————————————————————————————————————————————————————————————————————————
艹,经过一晚上和一上午的试验,终于发现问题所在:
浏览器输入aoxuangame.com登陆就不会刷新,也不提示错误。
浏览器输入aoxuangame.com/game登陆就会刷新。
看来是是因为设置了域名直接访问的缘故:见〖wordpress实用小技巧〗添加几个字符实现子目录访问转移到域名直接访问(http://www.cnblogs.com/cuizhf/p/4539608.html)。
参考这个网页http://codex.wordpress.org/Login_Trouble,应该可以得到答案,有时间再仔细看看。
————————————————————————————————————————————————————————————————————————————————————————
好吧,放弃了,直接把网站放到根目录好了;是否要开启WordPress网络功能(多站点模式)才能解决这个登录问题呢?
wordpress多站点功能在3.0版本以后已经开始提供,它的主要特色功能如下:
1、只安装一个wordpress程序即可创建多个wordpress站点,可以是子域名也可以是子目录。
2、类似新浪博客那样,让每个用户拥有自己的专栏博客。每个用户都有相互独立的博客后台。
3、管理员可设置开放哪些主题给多站点,用户可以从开放的主题中自行选择喜欢的主题样式。
4、管理员可配置插件给用户使用,借助wordpress良好的插件扩展性,不断完善用户博客的功能。
使用wordpress的多站点功能,你完全可以配置出一个迎合用户需求的个人专栏博客。