No 'Access-Control-Allow-Origin' header is present on the requested resource

配置了阿里云cdn后,字体文件无法加载, 报上面的错误, google中有设置nginx跨域的,但是配置后发现并没有用.

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

后来在阿里云cdn解决方案里看到,只需要在cdn控制台 配置cors跨域访问的白名单就行.

参考:

CDN支持cors(跨域)配置的步骤与注意事项

操作步骤

  1. 登录CDN控制台,单击域名管理。
  2. 选择需要配置cors功能的域名,单击管理。
    aliyun-cdn-console.png

  3. 单击缓存配置 > HTTP头,单击添加。配置参数,选择Access-Control-Allow-Origin参数。
    aliyun-cdn-console-http-cros.png

    说明 参数Access-Control-Allow-Origin的取值不支持多个域名, 我直接配置 * 了



在HTTP消息头中,按其出现的上下文环境,分为通用头、请求头、响应头等。目前阿里云提供10个HTTP响应头参数可供您自行定义取值,参数解释如下:

参数描述
Content-Type指定客户端程序响应对象的内容类型。
Cache-Control指定客户端程序请求和响应遵循的缓存机制。
Content-Disposition指定客户端程序把请求所得的内容存为一个文件时提供的默认的文件名。
Content-Language指定客户端程序响应对象的语言。
Expires指定客户端程序响应对象的过期时间。
Access-Control-Allow-Origin指定允许的跨域请求的来源。
Access-Control-Allow-Headers指定允许的跨域请求的字段。
Access-Control-Allow-Methods指定允许的跨域请求方法。
Access-Control-Max-Age指定客户端程序对特定资源的预取请求返回结果的缓存时间。
Access-Control-Expose-Headers指定允许访问的自定义头信息。

注意事项

  • HTTP响应头的设置会影响该加速域名下所有资源客户端程序(例如浏览器)的响应行为,但不会影响缓存服务器的行为。
  • 目前仅支持上述HTTP头参数取值设置。如果您有其他HTTP头部设置需求,请提交工单反馈。
  • 关于参数Access-Control-Allow-Origin的取值,您可以填写*表示全部域名;也可以填写完整域名,例如:www.aliyun.com
  • 目前不支持泛域名设置。
0条评论 顺序楼层
请先登录再回复