window.open()URL有www。和饼干的问题
问题描述:
我有一个脚本,做这样的:window.open()URL有www。和饼干的问题
window.open("http://www.myurl.com","myURL","width=400,height=200");
还好,这个工程。我有Cookie设置和会话设置。用户登录时只能访问我的页面。当我注销时,这个页面会引导我登录window.open()
,正如预测的那样。
当我拿出在window.open()
window.open("http://myurl.com","myURL","width=400,height=200");
的cookie和session不适www
?即使我已经注销,我仍然可以进入该页面。
现在,当我在原始浏览器中尝试myurl.com
时,它会将我引导到我应该登录的页面。
任何想法为什么?我的意思是我可以将它设置为www,但我想知道原因是什么?
感谢
答
我假设你正在使用PHP的setcookie()
功能(因为这是你评论什么对你的问题)设置你的cookies。
PHP会将这些cookie设置为用户当前所在的域。如果用户位于www.mysite.com
,则Cookie将仅应用于www.
-subdomain。而应该给域PHP应该设置的cookie:
setcookie('name', 'value', $time, '/', '.example.com')
注意前导点:.example.com
,因为它使cookie将被上example.com
所有子域(即www.example.com
和example.com
应用于表示一个通配符以及您可能拥有的其他子域名)。
有关此功能的更多信息:PHP docs
您的cookies只适用于'www'范围。您可以在设置Cookie时定义范围,通常,您可以将其设置为“http:// *。myurl.com”,以便适用于所有子域。 – JCOC611 2012-08-09 04:10:46
我已经设置我的cookie为“/”='setcookies(“name”,“value”,$ time,“/”)'这不适用于子域? – hellomello 2012-08-09 04:13:05
我猜想这只会适用于你当前的子域名(所以如果它设置在“http:// www.myurl.com”,那么它只适用于这样的)。 – JCOC611 2012-08-09 04:25:42