session跨域读取

首先,明确以下概念

session与cookie都是为了解决http协议无状态而诞生的,由客户端浏览器保存记录一些请求信息,下次再去发http请求的时候,把记录在浏览器中的cookie读取出,发到服务器上。 session是在服务器端也对应保存一份信息,当下次发http请求时根据cookie带来的session ID去读取到这部分信息。

遇到问题,session id的生成,一般根据浏览器、域名等生成,所以,遇到诸如 xx.hot-tea.cm 与xxx.xxx.hot-tea.cn  如果session记录是在xx.hot-tea.cn时,正常 去xxx.xxx.hot-tea.cn是拿去不到这个session的,应该session ID的不同。

解决办法:

1、修改php.ini 

找到 session.cookie_domain = .youdomain.com   //将.youdomain.com配置为你的二级域名

2、在项目最开始的地方初始化配置session域

ini_set('session.cookie_domain',"..youdomain.com");//跨域访问Session

查看浏览器获取session的id  可以看到,两个域名的id一致

以上,二级域名下的子域名既可以共享session.


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录Cookie机制什么是CookieCookie的不可跨域名性Unicode编码:保存中文BASE64编码:保存...
    Tomatoro阅读 16,999评论 7 186
  • 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Se...
    chinariver阅读 5,711评论 1 49
  • 转自 :http://blog.csdn.net/taoff/articles/1921009.aspx 一、术语...
    stone_yao阅读 6,288评论 0 31
  • 朋友淘了一张老茶桌,搭以紫砂石瓢,菖蒲山石,衬得茶室幽静致远,大家喝得格外尽兴。更要紧的是,茶桌岁月悠久,桌面已然...
    含山云容阅读 801评论 5 7
  • 1.20做一个不好惹得人 觉得做一个不好惹得人,单从字面上理解是因为自己比较强大,不容易被人欺负。而最根本的是...
    徐猛_Merlin阅读 242评论 0 0