技术频道导航
HTML/CSS
.NET技术
IIS技术
PHP技术
Js/JQuery
Photoshop
Fireworks
服务器技术
操作系统
网站运营

赞助商

分类目录

赞助商

最新文章

搜索

web.config 设置 X-Frame-Options 的方法【亲测有效】

作者:admin    时间:2018-1-15 17:5:40    浏览:

web.config 设置 X-Frame-Options 的方法,不少文章都有介绍过,代码看似简单,但一不小心就会出现错误,例如代码块放错了地方。这里我提供一个完整的web.config代码,可以更清楚的看到代码块的位置。

代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<connectionStrings>
  <add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
</connectionStrings>

<system.web>
<compilation debug="true" targetFramework="4.0" />

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>

</system.web>

<system.webServer>

<httpProtocol>
  <customHeaders>
    <add name="X-Frame-Options" value="SAMEORIGIN" />
  </customHeaders>
</httpProtocol>

</system.webServer>
</configuration>

说明, <httpProtocol>...</httpProtocol> 整块代码一定要放到 <system.webServer>...</system.webServer> 里面,尤其要注意的是, <system.webServer>...</system.webServer><system.web>...</system.web> 是并列的代码块,相互不能被包含。

X-Frame-Options 有三个值:

DENY

表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。

SAMEORIGIN

表示该页面可以在相同域名页面的 frame 中展示。

ALLOW-FROM uri

表示该页面可以在指定来源的 frame 中展示。uri 是网页地址,如:http://www.webkaka.com/

web.config 设置 X-Frame-Options 无效的原因

做项目时,有可能遇到 web.config 设置 X-Frame-Options 无效的情况,请确认自己已经重启了IIS。如果不行,试试下面的代码:

<system.webServer>
  <httpProtocol>
    <customHeaders>
      <add name="Content-Security-Policy" value="default-src: https:; frame-ancestors 'self' X-Frame-Options: SAMEORIGIN" />
    </customHeaders>
  </httpProtocol>
</system.webServer>

代码解释,您的 web.config 条目需要在 Content-Security-Policy (内容安全策略)下才能使用之前没有折旧的编码。 value ="default-src: https:"内容安全策略下的值对您的网站是唯一的。

重要的内容是 'value =“default-src: https:' 后面的内容,但最重要的是包含在内容安全策略中。

您可能对以下文章也感兴趣

标签: IIS  X-Frame-Options  
  • IT热文
  • 站长推荐