php httponly cookie在浏览器关闭时被删除
php httponly cookies being deleted on browser close
我正在我的网站上工作"记住我";功能,并且我使用session_set_cookie_params来保持会话有效,即使用户决定关闭他或她的浏览器。我遇到的问题是,即使我将cookie设置为持久性,浏览器也会删除它们,只有当我将cookie上的HttpOnly标志设置为true时才会发生这种情况。
以下是我现有的一些伪代码:
设置php-ini-的cookie生存期
为php-ini-设置垃圾收集器的最大生存时间
确定用户是否想要持久会话
设置会话cookie的时间,并确保它使用HttpOnly
启动会话
以下是我目前对正在使用的功能的了解,如果我有什么错的话,请告诉我:
- 使用session_set_cookie_params时,如果希望在浏览器关闭时删除会话,请将时间设置为0
- 将时间设置为零以上,会话cookie将在该时间段内保持活动状态
- 如果您不希望通过javascript访问cookie,请将HttpOnly设置为true
在这种情况下,我绝对不希望通过javascript访问cookie。我做错什么了吗?
如果我应该补充更多信息,也请告诉我,这是我第一次提问。非常感谢。
好吧,所以我最终解决了这个问题,结果发现它与HttpOnly标志无关。最后,它不得不把饼干的持久性设置在错误的地方。
所以问题在于,当我在将cookie设置为持久性之前使用setcookie时。为了解决这个问题,我只需在调用setcookie函数之前将cookie设置为持久性。
我很抱歉认为错误是HttpOnly标志造成的,这是我不应该做出的重大假设。
相关文章:
- 当浏览器上的后退按钮到达主页时,我需要删除Class
- php httponly cookie在浏览器关闭时被删除
- 删除客户端浏览器上不需要的内容
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 如何从浏览器中获取cookie,从另一个应用程序中删除
- 移动浏览器-如何删除拖动到水平滚动
- 使用javascript删除浏览器的所有Cookie
- 通过javascript从浏览器历史记录中删除URL
- 如何在浏览器中禁用或删除粘贴上下文菜单项
- 删除浏览器底部链接的目标Url's页
- jQuery:删除浏览器生成的 title 属性
- 删除浏览器底部在 jQuery UI 选项卡的鼠标悬停上显示的 URL
- 如何删除浏览器在一次请求期间添加的所有 Cookie
- 如何从tabindex流中删除浏览器函数
- 如何从firefox扩展中删除浏览器cookie
- 如何在不删除选择框滚动条的情况下删除浏览器滚动条
- 如何自动删除浏览器缓存
- 删除浏览器窗口工具栏和菜单栏没有窗口打开
- 如何防止Lightbox_me脚本删除浏览器滚动条
- 删除浏览器历史记录