我的问题是:会话Cookie是否受站点路径限制?也就是说,如果Cookie设置为mysite.net/rodents/gerbil/是否不适用于其他路径,如mysite.net/rodents/hamster?会话cookie受路径限制?
的背景是:
我在http://sonet.nottingham.ac.uk/rlos/placs/users_carers/home中,我想用一个cookie来让页面旁白自动启动,或者没有,当用户进入页面开发了一个简单的网站。默认情况下,自动启动功能处于关闭状态,但如果用户通过顶部的音频播放器勾选复选框并转至另一页,则Cookie(012)会将其设置为on
,播放器autostart
参数在PHP(CodeIgniter)中设置为true
。
这可以在站点部分(例如Home)中正常工作,但是当用户移动到另一部分时(例如后续步骤),根据Firebug,cookie会消失。所以,如果我在打勾家里的复选框,然后FB报告饼干:
- 名称:自动播放
- 值:上
- 域:sonet.nottingham.ac.uk
- 大小:10b的
- 路径:/ RLOS/placs/users_carers/
- 过期:会话
如果我去到另一个网页首页中的cooki e仍然存在。如果我转到Next Steps,cookie会消失,但如果我勾选复选框FB,则会报告设置的Cookie,但路径为'/ rlos/placs/users_carers/steps /'。有趣的是,在部分之间切换并选中该框会为每个路径生成一个cookie。
我到现在为止还没有在我的网站中真正使用过Cookie,我更喜欢使用PHP会话变量,但我认为设置会话Cookie很简单,而且我不会因为某些原因而导致我想要cookie集客户端使用jQuery。我可以通过设置一个持久cookie来解决这个问题,但是a)我不想在用户的机器上留下cookie,并且b)我想知道翻盖是怎么回事。
这可能是我没有走过最好的方式,但这个项目必须在星期二完成,所以我不能重做我的方法。
尔,以及查询是关于cookies。无论我使用Codeigniter还是Hamsterscript作为后端,或者jQuery或Beaverware客户端都不相关。但是,跆拳道,我会添加更多的标签,因为我喜欢保持民间的快乐。简单的问题是:会话cookie是否受路径限制? – 2012-07-29 18:33:49
不,它们不是(至少在CI中),全部取决于如何在配置文件中设置cookie设置。例如,把'/'当作路径,你可以在你的整个一边玩它。这是你正在解决的问题吗? – manix 2012-07-29 22:06:13
使用jQuery和jquery.cookie插件(https://github.com/carhartl/jquery-cookie)来取消/设置cookie。我只是在CI中阅读cookie。也许这是导致问题的插件 - 我会进行调查。昨晚我太喜欢这件事了,想清楚:( – 2012-07-30 10:18:31