VIP福利
主页 > 建站问题 > 网站运营 > font-face字体文件跨域解决办法

font-face字体文件跨域解决办法

我们在访问二级域名访问一级域名的字体文件有时,浏览器会阻止并报提示 已拦截跨源请求:同源策略禁止读取位于 https://www.dedesos.com/fonts/fontawesome-webfont.woff?v=4.7.0 的远程资源。(原因:CORS 头缺少 Access-Control-Allow-Origin) 已拦截跨源请求:同源策略禁止读取位于 https://www.dedesos.com/fonts/fontawesome-webfont2.woff?v=4.7.0 的远程资源。(原 […]



我们在访问二级域名访问一级域名的字体文件有时,浏览器会阻止并报提示

已拦截跨源请求:同源策略禁止读取位于 https://www.dedesos.com/fonts/fontawesome-webfont.woff?v=4.7.0 的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')

已拦截跨源请求:同源策略禁止读取位于 https://www.dedesos.com/fonts/fontawesome-webfont2.woff?v=4.7.0 的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')

原因很简单,服务器阻止了字体跨域访问了,解决方法也很简单

第一种方法:把字体文件放到二级目录里,用二级目录的域名链接css文件

例如

<link rel="stylesheet" href="https://m.dedesos/com/font/font-awesome.min.css">

第二种方法:在主域名的环境配置文件里加入允许字体跨域

apache环境 域名conf文件里加入

Header set Access-Control-Allow-Origin "*"

nginx环境 域名conf文件里加入

location ~* \.(ttf|ttc|otf|eot|woff|woff2|font.css)$ {
	add_header Access-Control-Allow-Origin *;
}

IIS环境 首先确保iis网站上已经添加mine类型

AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/x-font-woff woff

再打开 HTTP 响应标头中添加

名称:Access-Control-Allow-Origin

值:*

重启iis


共有 条评论