一些应用程序,不是我写的,也不是用PHP语言编写的,它为域"www.domain.com“创建了一个cookie。
我在试着替换那块饼干。所以在php中我这样做了:
setcookie('mycookie','mydata',time() + 2*7*24*60*60,'/','www.domain.com', false);但是,生成的cookie是为域".www.domain.com“创建的,请注意点”。在域的前面。
所以它不会替换它,它会创建另一个cookie。我能做什么?
发布于 2010-02-18 18:29:40
如果您指定了域,则应遵循RFC 2109并在该域前加上一个点;否则客户端将这样做。但是,如果您根本不指定域,客户端将获取请求的域。
发布于 2019-09-22 00:08:49
这不是像个bug吗?如果我希望我的cookie只在www.example.com上,而不是在something.www.example.com上,该怎么办?例如,为了性能。我应该能够指定Cookie域,而不是所有子子域的通配符。更不用说它引起的大量bug了,例如,用php设置cookie,然后用JavaScript删除它(这不会加上愚蠢的点)。
发布于 2010-02-18 11:53:51
尝试创建几个具有相同名称但不同域的其他cookie。示例:
setcookie('mycookie','mydata1',time() + 2*7*24*60*60,'/','www.domain.com', false);
setcookie('mycookie','mydata2',time() + 2*7*24*60*60,'/','www.domain.com', false);
setcookie('mycookie_top','mydata1',time() + 2*7*24*60*60,'/','domain.com', false);
setcookie('mycookie_top','mydata2',time() + 2*7*24*60*60,'/','domain.com', false);然后在Firebug中检查由这些命令创建的cookie。如果你一直得到一个双cookie,那么这可能是PHP中的一个bug。另外,尝试在javascript代码中设置cookie,看看是否仍然有相同的问题。
https://stackoverflow.com/questions/2285010
复制相似问题