IE7中的iframe无法写入Cookie问题——P3P协议
2010-01-11 15:07:53 作者:allniu 来源:www.allniu.com 浏览次数:0 网友评论 0 条
自己开发了一个SNS插件,使用IFRAME的方式接入到SNS平台中,最后上线时却发现IE7中不能正常使用,找了很长时间,终于发现是IE7中的P3P协议搞出来的问题,不过找到了办法,可以解决了。呵呵!
自己开发了一个SNS插件,使用IFRAME的方式接入到SNS平台中,最后上线时却发现IE7中不能正常使用,找了很长时间,终于发现是IE7中的P3P协议搞出来的问题,不过找到了办法,可以解决了。呵呵!
在网上查找了许多资料,发现在IE7中存在这样的问题:如果页面中存在着一个或多个iframe的子页面,那么在子页面中创建session可能无法成功,这样session数据就无法和其他页面所共享。在开发校内、51应用时,假设采用iframe方式,很可能会遇到这样的问题。而且这个问题只存在于IE7浏览器中,我在firefox, IE6和chrome等浏览器中测试均没有问题。
解决方案是:在运行session_start之前,在程序中加上如下一句(以php语言为例),大致是向浏览器声明一下安全级别,这样iframe子页面在创建session时就不会有问题了:
header(’P3P: CP=”ALL ADM DEV PSAi COM OUR OTRo STP IND ONL”‘);
另外,我还了解到:如果二级域名中包含了下划线,如:your_domain.yourhost.com,在建立和传递session时也可能会出现问题
关键词:P3P协议



已有