首页 / PHP / iframe跨站被浏览器拦截
iframe跨站被浏览器拦截
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了iframe跨站被浏览器拦截,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1702字,纯文字阅读大概需要3分钟。
内容图文
![iframe跨站被浏览器拦截](/upload/InfoBanner/zyjiaocheng/241/a9713be12523495b998695a9a1d1e54b.jpg)
后端代码:
function login_to_spe(){
//省略了get url 代码
header("Location: $url");
}
前端代码和后端代码都在同一个域名下,login_to_spe()获取的url是另一个域名下的
iframe引用的是同域名下的url,虽然这个url进行了跳转,但为什么还是被浏览器拦截了?
浏览器报的错误:Load denied by X-Frame-Options: https://xxxx.com/ does not permit cross-origin framing.
最后查出来的问题是:清了浏览器的缓存就不会报错了。。ORZ。。
回复内容:
前端代码:
后端代码:
function login_to_spe(){
//省略了get url 代码
header("Location: $url");
}
前端代码和后端代码都在同一个域名下,login_to_spe()获取的url是另一个域名下的
iframe引用的是同域名下的url,虽然这个url进行了跳转,但为什么还是被浏览器拦截了?
浏览器报的错误:Load denied by X-Frame-Options: https://xxxx.com/ does not permit cross-origin framing.
最后查出来的问题是:清了浏览器的缓存就不会报错了。。ORZ。。
请求数据步骤
发送请求--->浏览器接受响应--->判断是否是同域下
是的话,就把响应数据返回给请求点。不是的话就提醒禁止跨域请求。
现在可以在响应头中增加
header("Access-Control-Allow-Origin: *"); //允许的域
header("Access-Control-Allow-Methods: POST, GET, OPTIONS"); //允许的方法
header("Access-Control-Allow-Headers: X-PINGOTHER"); //允许的自定义header
告诉浏览器可以把响应值返回给跨域请求的点
=============================================================================
1楼的评论,说这针对的不对
看提示Load denied by X-Frame-Options: https://xxxx.com/ does not permit cross-origin framing.
X-Frame-Options头就是用来告诉浏览器,本页面是否应该在frame显示本页面。
它的配置:
DENY 这个页面不允许在frame中显示
SAMEORIGIN 只允许在本域的frame中显示
ALLOW-FROM uri 配置允许显示的域
因此,只需要添加如下
header("X-Frame-Options: ALLOW-FROM xxx你的域xxx");
内容总结
以上是互联网集市为您收集整理的iframe跨站被浏览器拦截全部内容,希望文章能够帮你解决iframe跨站被浏览器拦截所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。