首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我怎样才能允许我的站点被嵌入到iframe中?

我怎样才能允许我的站点被嵌入到iframe中?
EN

Stack Overflow用户
提问于 2017-03-07 23:10:16
回答 2查看 11.4K关注 0票数 2

我有一个网站托管在外部服务器上,我希望能够从我的本地开发环境(localhost)中运行它(在iframe中)。不幸的是,当我尝试使用iframe加载页面时,在框架内容中收到“此内容无法在框架中显示”的消息。我该如何解决这个问题?

使用iframe的本地网站是经典的asp,而托管在外部服务器上的网站是MVC4。我只在尝试iframe MVC4 web应用程序时出现错误。当我尝试iframe一个经典的asp站点,它位于与MVC4应用程序相同的服务器(相同的域),我没有得到任何错误。

EN

回答 2

Stack Overflow用户

发布于 2017-03-14 22:06:03

根据Mozilla Developer Network的说法,任一<frame>, <iframe> or <object>元素都支持三个选项:

  • X-Frame-Options: DENY
  • X-Frame-Options: SAMEORIGIN

编辑的:根据多纳的评论,以下选项不再受支持,不应使用:

第一个和最后一个绝对不是你需要的。我尝试使用本地服务器访问另一台本地服务器,方法是:

X-Frame-Options: ALLOW-FROM http://localhost/

但是我得到了一个回应:'allow-from http://localhost/' is not a recognized directive. The header will be ignored.

这在某种程度上是可行的,因为头部被忽略了,但你必须评估这是否对你的网站是可取的。在这种情况下,请求您的服务器不发送此标头会更简单。但只有在你了解项目的后果的情况下才能这么做。

IIS上,可以使用以下命令通过web.config完成此操作:

代码语言:javascript
复制
<system.webServer>
 <httpProtocol>
  <customHeaders>
    <remove name="X-Frame-Options" />
  </customHeaders>
 </httpProtocol>
</system.webServer>

有关Apache,请参阅this topic

只需记住,这取决于您的web浏览器是否遵守头文件。Mozilla甚至表示:

仅当访问文档的用户使用支持X-Frame选项的浏览器时,才会提供增加的安全性。

例如,我相信Edge对这条规则比Webkit更严格。

票数 2
EN

Stack Overflow用户

发布于 2017-03-27 16:45:10

事实证明,修复方法是使用SuppressXFrameOptionsHeader来确保XFrameOptionsHeader设置不会被自动覆盖。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42651766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档