【问题标题】:Facebook X-Frame-Options & IIS 6Facebook X 框架选项和 IIS 6
【发布时间】:2013-01-31 09:31:25
【问题描述】:

我需要从位于为 Facebook 创建的最顶层页面上的锚点打开一个 URL。做一些研究,我发现新的 X-Frame-Options 限制正在阻止此操作,并且可能的解决方法是允许在请求者级别访问,即。我的申请。

应用程序通过 IIS 6 托管,因此我可以轻松添加所需的自定义标头 X-Frame-Options ALLOW-FROM http://www.mywebsite.com/,但是,尝试单击页面中的链接时仍然收到拒绝消息.

我无法升级到更新版本的 IIS,因为营销材料已经发布。有没有其他方法可以解决这个问题,还是我在错误的位置添加了 X-Frame-Options?

另外,我的两个锚点中都有 target="_top"。

【问题讨论】:

    标签: facebook x-frame-options


    【解决方案1】:

    我需要从位于为 Facebook 创建的最顶层页面上的锚点打开一个 URL。做了一些研究,我发现新的 X-Frame-Options 限制正在阻止此操作

    不,恰恰相反——X-Frame-Options 标头的作用是限制文档在任何类型的框架环境中显示

    并且可能的解决方法是允许在请求者级别进行访问,即。我的申请。

    没有。 responder,即传递资源的 Web 服务器,必须设置该标头来控制文档可以显示或不显示的位置。

    【讨论】:

    • 那么,响应者 (jadederic.com) 必须设置标头,我在做什么?
    • 那么真正的问题是什么?我仍然不知道在顶层打开页面与此有什么关系。
    • 我有一个应用程序,位于somedomain.com/social,我通过 FB 标签将它 iframe 到 Facebook。总共3页,你到最后一页,你有一个按钮。您单击此按钮可在 twitter 上共享某些内容,这是最高级的,因为众所周知,Twitter OAuth 不允许 iframe。现在 facebook 因为 XFO 而阻止了这个
    • 我仍然不明白为什么由于 X-FRAME-OPTIONS 标头而应阻止该场景中的任何内容。
    • 这就是 Chrome 告诉我的。如果我从为我的页面提供服务的 IIS 中删除 X-Frame-Options 标头,Facebook 只会阻止它,但 target="_top" 仍然无法正常工作,即使在页面上启用了 ALLOW-FROM somedomain.com ..跨度>
    【解决方案2】:

    根据我的经验,请考虑以下情况: 域 A:您的域 域 B:Facebook

    您在 IIS 中的 HTTP 响应标头规则(假设您使用的是 IIS)将是: 名称:X-Frame-Options 值:ALLOW-FROM http://www.facebook.com

    这将允许 facebook 托管一个 iFrame,其中包含您的内容。 iFrame 的父级是 facebook.com,这就是您必须使用这种方法的原因。如果您在 ALLOW-FROM 值中提供的主机标头与托管域相同,则将该值设置为 SAMEORIGIN。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-17
      • 2013-07-14
      • 2019-05-17
      • 1970-01-01
      • 1970-01-01
      • 2014-04-12
      • 2018-06-28
      相关资源
      最近更新 更多