X-Content-Type-Options nosniff
Prevents selected responses from being interpreted as a different MIME type.
Support in current browsers
Checked against the current browser versions recorded in MDN browser data 8.1.5.
| Browser | Minimum | Outcome | Reason |
|---|---|---|---|
| Chrome | 155 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Edge | 154 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Firefox | 157 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Safari | 27 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Chrome for Android | 155 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Firefox for Android | 157 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Safari on iOS | 27 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Android WebView | 155 | Works | Every required mapped BCD feature is available without a recorded qualification. |
| Samsung Internet | 30.0 | Works | Every required mapped BCD feature is available without a recorded qualification. |
How support changed
Each segment groups recorded releases with the same result. Gaps between recorded versions are not filled in. This is support at each release, rather than the planner’s check of every release above a minimum.
Chrome
http.headers.X-Content-Type-Options- 1 – 6363 recorded releasesWorks with limits
- Partial implementation
- Not supported for stylesheets.
- 64 – 15591 recorded releasesWorks
Edge
http.headers.X-Content-Type-Options- 12 – 15482 recorded releasesWorks
Firefox
http.headers.X-Content-Type-Options- 1 – 4952 recorded releasesNot supported
- 50 – 157108 recorded releasesWorks
Safari
http.headers.X-Content-Type-Options- 1 – 10.117 recorded releasesNot supported
- 11 – 2744 recorded releasesWorks
Chrome for Android
http.headers.X-Content-Type-Options- 18 – 6340 recorded releasesWorks with limits
- Partial implementation
- Not supported for stylesheets.
- 64 – 15591 recorded releasesWorks
Firefox for Android
http.headers.X-Content-Type-Options- 4 – 4943 recorded releasesNot supported
- 50 – 15798 recorded releasesWorks
Safari on iOS
http.headers.X-Content-Type-Options- 1 – 10.314 recorded releasesNot supported
- 11 – 2744 recorded releasesWorks
Android WebView
http.headers.X-Content-Type-Options- 1 – 46 recorded releasesNot supported
- Partial implementation
- Not supported for stylesheets.
- 4.4 – 6329 recorded releasesWorks with limits
- Partial implementation
- Not supported for stylesheets.
- 64 – 15591 recorded releasesWorks
Samsung Internet
http.headers.X-Content-Type-Options- 1.0 – 8.220 recorded releasesWorks with limits
- Partial implementation
- Not supported for stylesheets.
- 9.0 – 30.032 recorded releasesWorks
BCD 8.1.5 · catalogue 2.3.0. Source corrections can change this trace without a new browser release.
What this feature can and cannot do
Helps protect against
- MIME confusion
- Unexpected script or style interpretation
Does not guarantee
- Incorrect declared MIME types
- Content injection
- Every navigation response
What you need before using it
- Correct Content-Type headers
Fallback to keep in place
Serve accurate media types and avoid hosting active content in untrusted upload locations.