繁体   English   中英

如何在同一浏览器中维护两个PHPSESSID Cookie,一个用于https,另一个用于HTTP

[英]How to maintain two PHPSESSID cookie one for https and other for http in same browser

我有一个Web应用程序,它使用标志HttpOnly,路径和安全性来设置会话cookie PHPSESSID。 仅在访问https URL时设置安全。

如果cookie是由http request设置的,则HTTP也会共享它,反之亦然。 如何在具有相同Cookie名称PHPSESSID的同一浏览器中维护两个不同的会话,一个用于HTTP,另一个用于https。

无法为主机设置两个具有相同名称的cookie。 Cookies与主机或域相关联,并且不考虑该协议。

如果您确实希望拥有单独的会话存储,则需要通过session_name手动将至少一个会话设置为具有不同的名称。

至于HttpOnly标志,它是浏览器的信号量,并且没有与之关联的活动服务器端行为。 换句话说,服务器可能会接受也可能不会接受该标志。

这方面的一个更有意义的设置是session.cookie_secure,服务器完全不会通过http发送cookie,但是,这不应解释为意味着它不会读取cookie。 如果在浏览器中设置了cookie,并且浏览器向该主机或域发出了后续请求(如果使用域cookie),则浏览器会发出锣声,将cookie数据包括在请求中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM