在登录页输入账号密码能进去,点任意一个内页又跳回登录页,重复登录十几次结果都一样,实在没法用。碰到这种情况,我一般先确认改动有没有真的生效。
原因不复杂,Cookie 的 path 被限在登录页所在目录,或者站点装在子目录而路径常量没跟着改,浏览器只在该路径下回传凭证,换到别的目录自然读不到。
「WordPress 登录 Cookie Path」相关的验证我通常做两遍,改完一次、隔天再看一次,确认不是临时生效。别只看报错的最后一行,往上看几行,真正的起因通常在上面。
define('COOKIEPATH', '/');
define('SITECOOKIEPATH', '/');
define('COOKIE_DOMAIN', '.example.com');
// 子目录安装时改成 /blog/
同类问题如果隔一段时间又出现,多半是某个定时任务或重启流程把改动冲掉了。
具体做法是,查配置文件里路径常量写的是根目录还是子目录;确认站点地址和安装地址是不是指向同一个目录;改完把浏览器里该域下的旧 cookie 全部清掉再重新登录一次。
最后用这个标准收尾,登录后连点五个内页都不再跳登录,刷新也不掉,cookie 路径为整站,后台也能进。
