Iis 不允许非HTML资源使用不必要的HTTP头

Iis 不允许非HTML资源使用不必要的HTTP头,iis,http-headers,web-config,mime-types,content-security-policy,Iis,Http Headers,Web Config,Mime Types,Content Security Policy,测试套件指出,发送HTTP头应该被认为是错误的做法 内容安全策略 X-Content-Security-Policy X-Frame-Options X-UA-Compatible X-WebKit-CSP X-XSS-Protection 发送非HTML资源时 我目前使用web.config配置IIS服务器,即 <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServe

测试套件指出,发送HTTP头应该被认为是错误的做法

  • 内容安全策略
  • X-Content-Security-Policy
  • X-Frame-Options
  • X-UA-Compatible
  • X-WebKit-CSP
  • X-XSS-Protection
发送非HTML资源时

我目前使用
web.config
配置IIS服务器,即

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="Content-Security-Policy" value="default-src 'self' ; img-src 'self' data:; script-src 'self' cdnjs.cloudflare.com/ajax/libs/html5shiv/" />
                <add name="X-Frame-Options" value="DENY" />
                <add name="X-Content-Type-Options" value="nosniff" />
                <add name="X-Permitted-Cross-Domain-Policies" value="none" />
                <add name="X-UA-Compatible" value="IE=edge" />
                <add name="X-Xss-Protection" value="1; mode=block" />
            </customHeaders>
        </httpProtocol>
    </system.webServer>
</configuration>

但无论发送的资源类型如何,该配置都会发送这些头。 如何使IIS有选择地将这些头添加到正确类型的文件中?

您可以使用(IIS扩展名)并仅为html资源添加自定义头。 选中此旧标题。

您可以使用(IIS扩展)并仅为html资源添加自定义标题。
请勾选此旧项。

请不要发布其他堆栈溢出问题的链接答案。取而代之的是,投票/标记为重复关闭,或者,如果问题不是重复的,则定制此特定问题的答案。谢谢,但链接的问题是关于根据文件类型添加标题。我想删除标题(我知道我可以通过将标题添加到所有
html
资源中来实现我想要的,而不是添加到其他资源中,但我更愿意以另一种方式进行,我想知道是否有办法实现这一点)。@Nick:对不起,下次我会更具体地说。Clément:我试图回答你的最后一个问题“如何让IIS有选择地将这些头添加到正确类型的文件?”请不要只发布其他堆栈溢出问题的链接答案。取而代之的是,投票/标记为重复关闭,或者,如果问题不是重复的,则定制此特定问题的答案。谢谢,但链接的问题是关于根据文件类型添加标题。我想删除标题(我知道我可以通过将标题添加到所有
html
资源中来实现我想要的,而不是添加到其他资源中,但我更愿意以另一种方式进行,我想知道是否有办法实现这一点)。@Nick:对不起,下次我会更具体地说。Clément:我试图回答您的最后一个问题“如何让IIS有选择地将这些头添加到正确类型的文件?”