Welcome to A!Die Software Studio |
恩,那么,为什么要限制呢?看来还是微软的程序员对自己浏览器的安全没什么信心,担心同一浏览器窗口不同域的情况下,黑客仍可能获取另一域的COOKIE,所以干脆把其中一个域的COOKIE干掉!!!人家FireFox为什么就没这种限制?
IE6/IE7支持的P3P(Platform for Privacy Preferences Project (P3P) specification)协议默认阻止第三方无隐私安全声明的cookie,Firefox目前还不支持P3P安全特性,firefox中自然也不存在此问题了。Mircosoft对此的具体描述可以参见 Privacy in Internet Explorer 6
解决方法:
很简单,在要嵌入的内容中(iframe指向的站点)输出P3P的主机头声明,通过W3C标准的P3P头声明cookie的安全隐私,这样一来IE浏览器就能按照你声明的隐私范围处理了。
常见的做法是发送如下的header头:P3P: CP=CAO PSA OUR,在PHP中你可以这样做:header('P3P: CP=CAO PSA OUR');
关于P3P更多的资料请翻阅:http://www.w3.org/P3P