文档介绍:晕掉,IE真是超级破,还好我二年没用它了(用了二年linux做桌面).这次一个大问题,客户的一台主页使用了frame的方法来固定自己的域名指向一个二级,为了让用户看起来更加好.
但发现很多用户不能登陆,但有的用户也能登陆(现在才清楚能上的都是firefox)。查了好久,后来发现原来是IE有个叫P3P(The Platform for Privacy Preferences)隐私参数选择平台,这样的一个超强的功能.
在frameset里面,也就是里面的frame是来自第三方站点(不同IP或不同域名),那么默认情况下IE会自动禁用这些站点的cookie,也就是在请求某url时在HTTP header里不发送它们的cookie,包括session的cookie。注意,这些站点在response里面设置的cookie还是会被发送到浏览器的。
但象IE ,IE 6的缺省隐私等级设置为"中"——即"阻止没有合同隐私策略的第三方cookie"。,,所以它是被IE当在了大门外。
所以,每次当用户提交的cookie提交时,.
好了,不多讲了,直接讲解决方案.
PHP的程序
可以直接在B网站中写入
<?php
header(‘P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA NAV OTC NOI DSP COR"’)
?>
这样就能接受第三方的Cookie啦。
lighttpd的服务器
    = ("mod_setenv")
-response-header = ( "P3P" => "CP=’CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA NAV OTC NOI DSP COR’")
apache的服务器
<VirtualHost>
Header set P3P ‘CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA NAV OTC NOI DSP COR"’
</VirtualHost>
IIS的服务器
增加一个网站http头来解决问题;
管理工具——〉选择一个网站——〉属性——〉http头,增加一个http头
然后输入头名:P3P
输入头内容:CP=CAO PSA OUR
问题描述:
   在一个应用(domain: A)的某个page中, 通过IFrame的方式嵌入另一个应用(domain: B)的某个页面. 当两个应用的domain
不一样时, 在被嵌入的页面中不允
许使用cookie(即使用cookie实现的session会失效).
问题分析:
   在XP SP2和IE6之后,从安全性角度考虑,默认状态下不允许在iframe里使用跨站点cookie。
解决方案:
   1. 修改Client的设置
    使Client可以接受来自任何网站的Co