>  기사  >  백엔드 개발  >  IE Frame 下 COOKIE SESSION失效的问题解决办法

IE Frame 下 COOKIE SESSION失效的问题解决办法

WBOY
WBOY원래의
2016-06-20 13:02:471298검색

这几天在做淘宝应用的时候碰到一个比较奇怪的问题,重要的信息在页面跳转之后总是不能保存,搞了半天才知道是session丢失的问题,搜索相关资料才发现php里面还存在session在ie的IFrame下存在易丢失这样的一个问题,遂总结了几种解决办法,好话不多说,如下。

解决IE下Iframe的Cookie失效问题问题的根是由于iframe跨站点cookie被阻导致session失效。

IE6/IE7支持的P3P(Platform for Privacy Preferences Project (P3P) specification)协议默认阻止第三方无隐私安全声明的cookie

解决方法: 很简单,在要嵌入的内容中(应用页面)输出P3P的主机头声明加入如下PHP代码:

header('P3P: CP=CAO PSA OUR'); //加入P3P防止IE下写Cookeis失败

解决IE下Iframe的Session失效问题IE6/IE7支持的P3P(Platform for Privacy Preferences Project (P3P) specification)协议默认阻止第三方无隐私安全声明的cookie,Firefox目前还不支持P3P安全特 性,firefox中不存在此问题具体的解决方式是在分页的Action处理方法中加上如下代码:

header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.