我试图研究这种机制,但只找到了一些提示,而且这些提示并不是很一致。 session_id是如何发送给浏览器的,当用户请求新页面时,浏览器又是如何指示返回的?
谢谢,克里斯
最佳答案
PHP 会做两件事:
- 它将重写所有链接以传递一个额外的 GET 参数,通常是 PHPSESSID 但这可以通过在 php.ini 中设置 session.name 来更改
- 它会添加一个隐藏的同名输入
<form>
打开标签。
请注意,这是一件危险的事情,因为任何人,例如,复制/粘贴包含 PHPSESSID 参数的 URL 将能够在网站上共享您的登录 session - 网络服务器没有简单的方法来告诉您您与发送链接的人不同...
关于php - 禁用 cookie 时 PHP session 如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/613967/