最近做项目优化时,需要把不常更改的静态资源做cdn处理,以减少页面响应时间。
但是项目中用的是字体图标,会造成字体图标不显示的问题。经查看是字体文件跨域了,原页面url请求的是http://download.cdn.csdnimg.cn/mobile_static/fonts/iconfont.woff这个cdn服务器上的字体库,但是页面url是download.csdn.net,造成跨域。
浏览器报错:
Access to Font at ‘http://download.cdn.csdnimg.cn/mobile_static/fonts/iconfont.ttf’ from origin ‘http://test.download.csdn.net’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘http://test.download.csdn.net’ is therefore not allowed access.
后来把cdn服务器的主机头Access-Control-Allow-Origin改为*就可以正常看到字体图标了。这虽然不是最好的解决方案,但是至少解决了所遇到的问题。如果有更好的解决方案,希望告知。