在哪里可以找到Windows Server上的X-Frame-Option值?

问题描述 投票:1回答:1

我已经检查了IIS 10.0中的http标题部分,我检查了Web配置文件,我无法在任何地方找到该选项,但某处将X-Frame-Option值设置为SAMEORIGIN:

拒绝在一个框架中显示'https://example.co.uk/',因为它将'X-Frame-Options'设置为'sameorigin'。

当我将X-Frame-Options添加到web.config时:

<httpProtocol>
<customHeaders>
<remove name="X-Powered-By" />
<add name="X-Frame-Options" value="allow-from https://example.co.uk/" />
</customHeaders>
</httpProtocol>

我在控制台中得到以下内容:

拒绝在一个框架中显示'https://example.co.uk',因为它设置了多个具有冲突值的'X-Frame-Options'标题('SAMEORIGIN,allow-from https://example.co.uk/')。回到'否认'。

我真的需要将iframe添加到另一个站点,因此需要此当前站点才能显示它。我可以完全访问这两个站点/服务器。

该网站是用c#.Net构建的,并且也没有设置响应标头 - 无论如何都要从我的搜索开始!

请有人解释一下这是怎么回事?

先感谢您。

.net iis-10 x-frame-options
1个回答
1
投票

对于遇到这种情况的人,我希望这会有所帮助。 MVC 4 +自动将x-frame-option添加为sameorigin。因此,如果您在IIS或配置中设置它,它将失败,因为它会获取这两个值。我的建议是不要覆盖它并考虑另一种方法,也许是在另一个网站上完成登录页面的API?这些天大多数网站都只允许同样的方式。

但是,如果确实需要覆盖它,可以在Application.Start()方法下的global.asax.cs文件中添加以下内容:

System.Web.Helpers.AntiForgeryConfig.SuppressXFrameOptionsHeader = true;

然后,您可以在IIS中或直接在站点web.config中设置所需的值。

© www.soinside.com 2019 - 2024. All rights reserved.