阿里云CDN+OSS跨域访问失败的原因及处理方法是什么?

作者阿里云代理 文章分类 分类:新闻快递 阅读次数 已被围观 3187

主要原因:

当您首次通过客户端浏览器访问资源时,如果CDN检测出该资源不存在,则回源进行访问。源站对比将数据,通过CDN返回给客户端浏览器。浏览器比对Access-Control-Allow-Origin后,允许正确,所以跨域正常。当您第二次访问资源时,CDN检测出存在该缓存资源,所以CDN将直接返回客户端缓存页面。由于CDN缓存了OSS未配置cors之前的文件及其头部,造成客户端浏览器判断失败,不允许访问,所以出现了跨域失败。

解决办法:

您可以通过设置Access-Control-Allow-Origin、Access-Control-Allow-Methods和Access-Control-Max-Age这三种HTTP头的参数的方式。如何设置,请参见设置HTTP响应头

设置完成后,只要您在CDN节点访问,就会包含上述3个头部信息,不会影响正常访问。验证结果如下:

阿里云服务器   阿里云代理商

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。

我有话说: