参考了一些资料,有人说数据库有问题,结果不是,终于有一个答案自己测试后发现完美解决,分享给大家:
打开文件“/wp-includes/pluggable.php”,修改wp_set_auth_cookie函数。
搜索这个东西,不必全部复制,复制主要内容即可(比如这个:ADMIN_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);
后话:以上目的主要就是更改cookie的作用目录,由原来的“/wp-admin”变成根目录“/”。问题大概是由于无法跨目录读取用户的cookie导致的。(参见pluggable.php中的函数wp_parse_auth_cookie)