第一次加载页面时出现“无法在框架中查看此内容”错误

2024-03-18

我开发了一个搜索表单,托管在我公司的本地服务器(iis,net core 网站)中。该网站是托管在另一台服务器(apache、wamp)上的 Wordpress,该服务器也在公司内。两者都有不同的公共IP,但两者都托管在同一域的子域下。

比如说,wordpress.company.com 和 search.company.com,我可以控制这两个网站。

我第一次使用 iframe 插件进行测试时,一切似乎都正常,但我现在意识到,Edge 中显示了此错误。所有浏览器上都会显示相同的行为,但不会显示类似的消息。

该内容无法在框架中显示

这里应该有一些内容,但发布者没有 允许它显示在框架中。这是为了帮助保护 您可能输入本网站的任何信息的安全性。

Try this

在新窗口中打开此窗口(这是 iframe 内容 url 的链接)

奇怪的是我只需要按 F5 就可以正确加载所有内容。

Chrome控制台中的错误是:

拒绝显示'http://subdomain.mysite.com/ http://subdomain.mysite.com/' 在一个框架中,因为 它将“X-Frame-Options”设置为“sameorigin”。

我该如何解决这种行为?


该问题与描述的问题类似here https://stackoverflow.com/questions/20254303/mvc-5-prevents-access-to-content-via-iframe但因为.net Core。并且解决方案也类似。

您还可以使用@user770 在问题评论中提出的建议。但是,这并不能解决 iframe 块的问题。这个答案都没有解释为什么刷新页面可以解决问题。然而,这对于用户来说并不是一个好的体验。

因此,解决方案很简单,并且可以通过代码完成,这样,如果有人尝试覆盖服务器中的 X-Frame-Options 设置,oyu 会更安全。任何多重设置都将派生为“拒绝”。

在项目的startup.cs 文件中,您必须添加此内容,以防止.net core 自动添加“sameorigin”设置。

 public void ConfigureServices(IServiceCollection services)
 {
        //YOU CAN HAVE SOME CODE HERE

        services.AddAntiforgery(o => o.SuppressXFrameOptionsHeader = true);
 }

但是,这可能会导致您的站点存在风险,并且当您对两个站点和两个域都有控制权时,应应用此方案。

为了保护站点,您必须设置 X-frame-options 设置以允许您想要的域。再次在startup.cs中执行以下操作。

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        //YOU MAY HAVE SOME CODE HERE

        app.Use(async (context, next) =>
        {
            context.Response.Headers.Add("X-Frame-Options", "ALLOW-FROM http://*.MYCONTROLLEDDOMAIN.COM https://*.MYCONTROLLEDDOMAIN.COM");
            await next();
        });
    }

这样您就可以允许您的域在 iframe 中请求该网站。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第一次加载页面时出现“无法在框架中查看此内容”错误 的相关文章

随机推荐

  • 集合removeAll忽略大小写?

    好的 这是我的问题 我必须HashSet的 我用的是removeAll方法从一组中删除存在于另一组中的值 在调用该方法之前 我显然将这些值添加到Sets 我打电话 toUpperCase 在各个String在添加之前 因为两个列表中的值的情
  • 显示菜单使光标消失

    单击时光标消失 如下所示 如何重现 获取 Game Jam 菜单模板 https www assetstore unity3d com en content 40465 https www assetstore unity3d com en
  • 如何完全反汇编Python源代码

    我一直在玩dis库来反汇编一些Python源代码 但我发现这不会递归到函数或类中 import dis source py test py with open source py as f source source code f sour
  • 打开工作表时自动执行的宏

    我的宏 update 是否有可能在每次打开 Excel 文件时自动执行 下面的代码不能很好地工作 谢谢 Private Sub Workbook Open Run update End Sub Option Explicit Sub upd
  • Google Sheets 调试无休止的计算和缓慢的加载时间(Chrome 开发工具)

    使用 Google 表格 随着时间的推移 它的复杂性和大小都在增长 现在正在无休止地计算 而且打开速度非常慢 该工作表包含大量数据 公式和导入范围 我已阅读有关如何加快工作表速度的最佳实践link https www benlcollins
  • 将 Fogbugz 与 TortoiseSVN 集成,无需 URL/Subversion 后端

    我已经安装了 TotroiseSVN 并且大部分存储库都从 C subversion 签入和签出以及一些从网络共享签入和签出的情况 当我最初发布这个问题时我忘记了这一点 这意味着我本身没有 颠覆 服务器 如何集成 TortoiseSVN 和
  • 为什么我收到错误“该类型的方法未定义”?

    我正在大学学习基础知识 希望获得有关 Eclipse 中以下错误的帮助 The method getCost is undefined for the type ShopCLI Exception in thread main java l
  • 在 Objective-C 中以编程方式计算 IRR(内部利率回报)和 NPV

    我正在开发一个金融应用程序并需要IRR in built functionality of Excel 计算并发现了如此好的教程C here http www codeproject com Tips 461049 Internal Rat
  • WPF 分隔符位置

    我正在使用分隔符在边框内绘制一条垂直线 起初这没问题 因为线条需要居中 但现在我需要将其定位在距左边框的自定义 x 位置 有没有办法做到这一点
  • 如何在 PyPI 中包含非 .py 文件?

    我是 PyPI 的新手 所以让我符合这一点 我试图在 PyPI 上放置一个包 但当我尝试使用 pip 安装它时遇到了一些麻烦 当我将文件上传到 PyPI 时 我收到一条警告 但 setup py 脚本完成时没有出现致命错误和 200 状态
  • 在 HLSL 中绘制超级椭圆

    更新 关于如何使用超级公式绘制一个的答案在最后 I need to draw a rounded rectangle such as this one using a SuperEllipse http en wikipedia org w
  • 如何在 chrome 扩展的选项页面和背景页面之间进行通信

    我面临一个问题 通过消息传递 我将 DOM 数据从内容脚本传输到后台页面 我想知道的是如何在选项页面和后台页面之间建立通信通道 应用程序编程接口chrome extension getBackgroundPage 没有用 传统的消息传递也不
  • Windows批处理脚本获取当前驱动器名称

    我有一个批处理文件 位于 USB 密钥上 我需要知道批次所在的驱动器名称 例如 如果它是 E mybatch bat 则打开时应该找到 E 与 F G 等相同的内容 我怎样才能在批处理脚本中做到这一点 视窗 CD 这就是您正在寻找的 它打印
  • Azure Redis 缓存 - GET 调用超时

    我们在 Azure 中有多个 Web 和辅助角色通过 StackExchange Redis 库连接到我们的 Azure Redis 缓存 并且我们经常收到超时 这使得我们的端到端解决方案陷入停滞 其中之一的示例如下 System Time
  • Flutter WebView 位置

    我正在创建该网站的 WebViewhttps nearxt com https nearxt com 它在打开时询问位置 但是当我使用此链接在 flutter 中创建 webview 时 那么它就无法定位 我还在应用程序中定义了位置 但 w
  • 如何在 CSV 文件中写入多行?

    我怎样才能创建一个 csv文件 在这个 csv我想写数据包的信息 这是我的代码 https www tcpdump org sniffex c https www tcpdump org sniffex c我想写入我的文件 csv一些印刷品
  • Prolog 中不带双精度的列表的所有组合

    有没有一种简单的方法可以获取列表的所有组合而无需双精度 没有双打我的意思是也没有彼此的排列 所以不行 a b c and c a b or c b a 因此对于输入 a b c 输出将是 a b c a b a c b c a b c 我只
  • 是否可以在不知道 Firebase 数据库中的两个自动生成的键内获取值?

    我在每个自动生成的键下添加了一些值 并添加了与每个键对应的子项 示例学生 然后我添加了自动生成的密钥与这个孩子 学生 和值 现在的问题是我如何从这个序列中获取值 我正在为学生使用模型课程 可以吗 要读取此数据 然后在您的应用程序中处理它 您
  • 如何删除名称以点(“.”)结尾的文件夹?

    我收到了一些由恶意软件创建的文件夹 其名称以点结尾 例如C a or C b etc 我找到了一个可以使用命令删除此类文件夹的解决方案rd q s C a 但如果我调用 win APIRemoveDirectory http msdn mi
  • 第一次加载页面时出现“无法在框架中查看此内容”错误

    我开发了一个搜索表单 托管在我公司的本地服务器 iis net core 网站 中 该网站是托管在另一台服务器 apache wamp 上的 Wordpress 该服务器也在公司内 两者都有不同的公共IP 但两者都托管在同一域的子域下 比如