php套用Iframe访问导致cookie跨域session失效问题
·
一.背景
a网站(www.aa.com)嵌入b网站 (www.bb.com) 网站,因为跨域原因,其实如果b网站是以aa.com后缀结尾的话是正常的
二.博客参考
https://juejin.cn/post/7123652955282079751
1.上面的试了这个IE的没什么用(有可能是我这边版本低导致)
// IE浏览器cookie跨域
header("P3P:CP=CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV");
2.Chrome的(这个要注意php版本,低版本是没有ini_set('session.cookie_samesite'这个的,当时搞了半天,最后才发现我这边php版本过低(我这边php版本是5.4.16)导致不生效,可以参考php运行配置https://cloud.phpts.com/books/phpmanual/session.configuration.html)
// Chrome等浏览器cookie跨域(一定要加上secure,否则SameSite无效)
ini_set('session.cookie_samesite', "None;secure");
3.由于我这边php版本过低,项目部署方式是Apache,直接改Apache配置(/etc/httpd/conf/httpd.conf),在配置文件夹下面一行就生效了
Header edit Set-Cookie ^(.*)$ $1;Secure;SameSite=None
4.session存储redis参考博客(我这边试了其实不用存储redis都正常)
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)