1.问题发生背景
- 上线公司新的前端服务,配置nginx后,出现corb的报错,大概是下面这样
Cross-Origin Read Blocking (CORB) blocked cross-origin response www.example.com/example.htm… with MIME type text/html. See www.chromestatus.com/feature/562… for more details.
- 前端服务配置nginx,css、js使用CDN缓存
2.解决
- 解决办法:juejin.cn/post/684490…
- 简单解决办法是在响应头中加上 X-Content-Type-Options: nosniff
- 注意点
- 是在CDN的响应头配置X-Content-Type-Options: nosniff,而不是nginx中配置
- corb是浏览器的安全策略,所以用curl或postman访问是正常的。在用浏览器访问前可以先用curl -I 返回响应头看下是否有X-Content-Type-Options: nosniff,如果有,但是浏览器访问还是有corb错误,可以对相关静态文件刷新预热,如果文件较多,可以重新npm run build静态文件