整合客户的登录时,或者其他一个网站通过iframe时,特别是一个http页面,访问一个https页面时,常常会session失效!
1、由于IE的安全限制,将父面所在域加入信任站点就OK了!
2、当“父”页面是https的,通过iframe去访问https页面时.
会报“有不安全的信息”
办法是: src="/" 就OK!
3、当客户设置了1时,还是不行时,怎么办呢?又查询了一些网上的资料!
IE6/IE7支持的P3P(Platform for Privacy Preferences Project (P3P) specification)协议默认阻止第三方无隐私安全声明的cookie,Firefox目前还不支持P3P安全特性,firefox中自然也不存在此问题了。
在frameset里面,也就是里面的frame是来自第三方站点(不同IP或不同域名),那么默认情况下IE会自动禁用这些站点的cookie,也就是在请求某url时在HTTP header里不发送它们的cookie,包括session的cookie。注意,这些站点在response里面设置的cookie还是会被发送到浏览器的。
在用户浏览a.php时 A.com写入的为第一方Cookie,其嵌入的iframe指向b.php.这时B.com写入的就为第三方Cookie了,所以它是被IE当在了大门外。 所以,每次当用户提交的cookie提交时,就挂掉了.因为传不到真实的服务器.
解决方案.
PHP的程序
可以直接在B网站中写入
这样就能接受第三方的Cookie啦。
lighttpd的服务器
apache的服务器
IIS的服务器
增加一个网站http头来解决问题;
管理工具——〉选择一个网站——〉属性——〉http头,增加一个http头
然后输入头名:P3P
输入头内容:CP=CAO PSA OUR
jsp页面:
java代码最简单的办法,增加一个filte:
分享到:
相关推荐
iframe 跨域访问session问题解决方法
主要介绍了iframe跨域与session失效问题的解决办法,有需要的朋友可以参考一下
NULL 博文链接:https://thoreau.iteye.com/blog/745100
【ASP.NET编程知识】iframe跨域与session失效问题的解决办法.docx
框架完美解决了iframe之间的跨域通讯。底层技术采用window.name转换代理实现
今天搞的一个登录页面,被别的网站用iframe嵌进去后,死活无法登录(只在IE中存在这种情况)。 很明显,session无法被保存。但是直接在地址栏打开那个登录页面,一切都正常啊。真是奇怪啊。 在网上搜索了一下。发现...
iframe跨域问题:Uncaught DOMException Blocked a frame with origin解决方法
解决springboot实现跨域session共享问题,防止sql注入。可以更有效的解决token问题,欢迎下载,有问题可以再评论下方留言,及时解答!!加群:687942640
NULL 博文链接:https://hqlly.iteye.com/blog/1662337
这是关于iframe使用过程中出现的问题整理的解决方法,关于使用iframe不用单独写接口打通数据,直接把数据通过ifarme嵌套方法传递过去,使用简单方便。
以前在面试的时候经常遇到问关于跨域的事儿,所以自己对跨域有一定的概念性了解,知道什么是跨域以及解决跨域的方法,但是具体实际从来没有操作过,直到最近在公司项目中,遇到了一个需要使iframe跨域进行POST提交的...
该文档介绍了vue和普通web页面中iframe实现跨域的解决方案,解决了主页面中无法调用iframe方法的问题
iframe 跨域 自动适应高度;iframe 跨域 自动适应高度;
iframe跨域访问示例
iframe跨域嵌套自适应高度 iframe跨域嵌套 丢失session值(针对嵌套asp.net 做的网站)
iframe 与主框架相互访问例子,包含同域访问,跨域访问例子。
finereport是一款常用的表格制作软件/报表开发工具,本资源讲述在表格制作软件中实现iframe跨域单点登陆的具体实现方法,包括具体的操作步骤和实现代码等
在web开发中,跨域问题是经常遇到的,但是由于浏览器同源策略的限制,不同域之间属性和操作是无法直接交互的。本次讨论iframe和父页面的消息通信。