X-Content-Type-Options

X-Content-Type-Options 响应首部相当于一个提示标志,被服务器用来提示客户端一定要遵循在 Content-Type 首部中对  MIME 类型 的设定,而不能对其进行修改。这就禁用了客户端的 MIME 类型嗅探行为,换句话说,也就是意味着网站管理员确定自己的设置没有问题。

这个消息首部最初是由微软在 IE 8 浏览器中引入的,提供给网站管理员用作禁用内容嗅探的手段,内容嗅探技术可能会把不可执行的 MIME 类型转变为可执行的 MIME 类型。在此之后,其他浏览器也相继引入了这个首部,尽管它们的 MIME 嗅探算法没有那么有侵略性。

站点安全测试人员通常欢迎对这个首部进行设置。

注意: nosniff 只应用于 "script" 和 "style" 两种类型。事实证明,将其应用于图片类型的文件会导致与现有的站点冲突

Header type Response header
Forbidden header name no

语法

X-Content-Type-Options: nosniff

指令

nosniff
下面两种情况的请求将被阻止:
  • 请求类型是"style" 但是 MIME 类型不是 "text/css",
  • 请求类型是"script" 但是 MIME 类型不是  JavaScript MIME 类型

规范

Specification Status Comment
Fetch
X-Content-Type-Options definition
Living Standard Initial definition

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
X-Content-Type-Options
Non-standard
Chrome Full support 64
Full support 64
Partial support 1
Notes
Notes Not supported for stylesheets.
Edge Full support YesFirefox Full support 50IE Full support 8Opera Full support YesSafari No support NoWebView Android Full support 64
Full support 64
Partial support Partial
Notes
Notes Not supported for stylesheets.
Chrome Android Full support 64
Full support 64
Partial support Partial
Notes
Notes Not supported for stylesheets.
Firefox Android Full support 50Opera Android Full support YesSafari iOS No support NoSamsung Internet Android Full support Yes

Legend

Full support  
Full support
No support  
No support
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
See implementation notes.
See implementation notes.

相关内容