如果客户端禁用了Cookie,那么服务端就不能得到Session了。因为通过Session ID来确定当前会话对应的服务端Session,而Session ID通过Cookie来传递,所以禁用Cookie相当于失去了Session ID,也就得不到Session了。
禁用Cookie时使用Session即传递Session ID的实现方式如下:
1 PHP自动跨页传递
设置php.ini配置文件中的“session.use_trans_sid = 1”,或者编译时启用“--enable-trans-sid”选项。
2 URL传递
通过URL传递Session ID并将其隐藏在表单中。
3 持久存储
采用文件和数据库等方式保存Session ID。
参考资料