由于浏览器中禁用了cookie,我们的Web服务器上的会话不会坚持。这意味着,如果我转到下一页,我会收到一个新的会话ID。在我重新加载的每一页上,我都会成为一个新的会话ID。启用cookie后,外翻就可以了。
网络服务器的规格:
- PHP版本5.3.3
- Apache版本2.2.13
- 使用SUSE Linux的Web服务器
在本地安装XAMPP时,一切正常。
更新:
我在每个页面上都有以下设置:
- ini_set('session.use_cookies','0')
- ini_set('session.use_trans_sid','1')
- session_start()
会话ID存在于URI中,但当我在页面上检查会话ID时,它们是一个新的ID,每次重新加载时,它们都是另一个ID。
当然可以。由于HTTP是一种无状态协议,会话通过将会话ID存储在cookie中而链接到用户。删除(或拒绝)此cookie将结束您的会话。
如果你不想要cookie,你必须在URL:中传输会话ID
除非您使用的是PHP 4.2.0或更高版本,否则您需要启用它在构建PHP时手动执行。在Unix下,将--enable trans-sid传递给配置。如果此生成选项和运行时选项启用
session.use_trans_sid
时,相对URI将更改为自动包含会话id。
http://es.php.net/manual/en/session.idpassing.php
另请参见session.use_cookies
和session.use_only_cookies
。
这种方法可以特别容易地通过共享链接泄露您的私人数据,因此现在几乎没有人使用它。