问题描述
今天在使用子域名访问根域名的css时,发现字体无法显示,在确保css和font字体的路径加载无问题后,基本确定是因为跨域的问题。
通过nginx模块http_headers_module来添加access-control-allow-origin允许的地址。
console报错信息
ccess to font at 'http://www.lcget.com/css/kohinoorbangla-regular.ttf'from origin 'http://www.lcget.com'has been blocked by cors policy:no 'access-control-allow-origin'header is present on the requested resource.origin 'http://carey.akhack.com'is therefore not allowed access
解决方法
location ~* \.(eot|ttf|woff|svg|otf)$ {
add_header access-control-allow-origin http://www.lcget.com;
add_header access-control-allow-headers x-requested-with;
add_header access-control-allow-methods get,post,options;
}
注意
add_header access-control-allow-origin http://www.lcget.com;//只允许单域名或者 ‘*'。不推荐 ‘*',会导致安全问题。
- 编程问答
- 答案列表
Nginx字体文件ttf、woff跨域配置详解[朗读]
加入收藏