正文

如何解决网站被别的网站frame的时候Session丢失的问题2007-03-20 18:20:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/hotphen/24139.html

分享到:

症状 如果别的站点要在Iframe中使用本网站的时候会发现,本网站实际上是不能保存Session的,如何被frame的页面如果像访问自己站点的Session会发现这个Session实际上是null,例如本网站上有一个登录窗口login.aspx,登录窗口登录之后就导航到index.aspx页面,index.aspx页面的访问需要login.aspx创建的Session["userid"]的存在,当我的这个网站被别的网站frame的时候,我们可以发现在login.aspx实际上是可以创建Session的,但是当页面导航到index.aspx的时候却发现Session已经丢失了,这就导致登录失败。   原因   Internet Explorer 6 引入用于隐私首选项 (P3P) 项目平台支持,如果 FRAMESET 或父窗口引用其他站点内 FRAME 或内子窗口, 子站点认为第三方内容。 它使用默认隐私设置是 中型 , InternetExplorer自动拒绝 Cookie 来自第三方站点。   解决方法   1、把IE隐私级别设置为低,这个不好实现,不能要求用户改变设置。 2、IIS设置 在站点属性里选择HTTP头选项卡,在自定义Http头里点击添加按钮,在弹出的窗口中的“自定义HTTP头名“中输入 P3P 在”定义HTTP头名“中输入 CP="CAO PSA OUR" 即可,此项设置可以单独应用于某个目录而不应用于整个站点。

阅读(3826) | 评论(2)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册