默认情况下,使用cookie传递会话ID。由于您的网站位于不同的域中,因此会话cookie不会转移,因此这是阻止跨域会话正常工作的一件事。
转移会话ID的一种技术是将它们附加到所有请求的查询字符串中(PHP甚至对此具有一定程度的内置支持)。但是,这种处理方式有很多缺点-
最重要的是人们一直在复制/粘贴URL,这暗示着揭示有效的会话ID和重用无效的会话ID,因此 不建议这样做 。
更好的方法是使用Javascript跨所有感兴趣的域发出跨域请求(当然,这需要进行合作)。这样,您可以在需要的多个服务器之间无缝传输会话ID。
共享的会话数据即使cookie没问题,您也需要将会话数据放在所有服务器通常可以访问的某些存储上。默认存储是本地文件系统,因此,如果要跨域会话,则需要再次更改。
解决此问题的简单方法是使用自定义会话处理程序,该处理程序将数据存储在数据库或其他可全局访问的存储区中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)