Php $\会话仅在website.com中工作,不在www.website.com中工作
如果我通过website.com登录,然后键入www.website.com,它不会显示我正在登录,我必须再次登录。有什么问题吗?这很正常。会话cookie应用于默认情况下发布的确切域Php $\会话仅在website.com中工作,不在www.website.com中工作,php,session,Php,Session,如果我通过website.com登录,然后键入www.website.com,它不会显示我正在登录,我必须再次登录。有什么问题吗?这很正常。会话cookie应用于默认情况下发布的确切域www.website.com是与website.com不同的域 您可以将cookie的范围扩展到子域,但更好的方法是实际上只有www.website.com或website.com,并将其中一个重定向到另一个 有关将www重定向到非www的信息,请参阅 这应该可以解决: session_set_cookie_
www.website.com
是与website.com
不同的域
您可以将cookie的范围扩展到子域,但更好的方法是实际上只有www.website.com
或website.com
,并将其中一个重定向到另一个
有关将www
重定向到非www的信息,请参阅
- 这应该可以解决:
session_set_cookie_params(
60 * 24, // 24 minutes lifetime
'/', // path
'.website.com', // any subdomain of website.com
false, // SSL not required
true // not accessible by JavaScript
);
session_start();
问题是website.com和www.website.com不是同一个域,因此您需要将会话id cookie设置为允许在www.website.com上访问。请检查访问
website.com
时建立的会话cookie。如果没有前导的
,那么它只适用于website.com,而不适用于任何“子”版本,例如www.
版本。谢谢,我该怎么做?如果您演示一下,这个答案会更好。@嘿,您想要哪种方式?我在问题中编辑了一个好答案,如果你解释一下,这个答案会更好。@Tomalak,我不反对。但是我很懒,有两个人已经回答了“为什么”作为对原始问题的评论