Iframe中的cookie被IE阻挡

By | 2012/03/21

在网站程序中, 经常要用到iframe, 想要在子页面中设置cookie, 现在大多数的浏览器都能设置成功, 但在IE中, 有可能会失败.

这跟IE隐私设置有关系, IE6中的隐私保护设置:在“工具”菜单下选择“Internet选项”。点击“隐私”标签。IE 6的缺省隐私等级设置为“中”——即“阻止没有合同隐私策略的第三方cookie;阻止使用个人可标识信息而没有您的隐含许可的第三方cookie;限制 使用个人可标识信息而没有隐含许可的第一方cookie”。

cookie被IE阻挡

cookie被IE阻挡

由可以知道, 只要我们在子页面中标识一下信息, 就可以在父页面的调用下设置cookie.

子页面的头上加上以下P3P申明(注意是子页面,而不是父页面):

php代码:

header(‘P3P: CP=CAO PSA OUR’);

这样的iframe的cookie在父窗口调用时就不会被IE阻挡.