我有一个网页使用角度js通过CloudFront CDN从S3加载一些图像文件。
在Chrome中,我会打开一个隐身窗口以及控制台。他们显示了一些错误消息 无法加载
http://cloudfront.net/image.png请求的资源上没有“Access-Control-Allow-Origin”标头。因此,不允许原点'yyy'访问。
但是在火箱中没有问题所有图像都被加载。但我只面对铬的问题
我已检查,更改并重新检查S3和Cloudfront上的设置。在S3中,我的CORS配置如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedOrigin>http://*</AllowedOrigin>
<AllowedOrigin>https://*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
并尝试我的.htaccess文件,如
<ifModule mod_headers.c>
Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
</IfModule>
但错误显示在Chrome浏览器中,请任何正文帮助解决问题
答案 0 :(得分:0)
添加Cloudfront“Edge-To-Origin”Origin标头以强制每个请求(xhr或非xhr)上的CORS响应标头:
原点---&gt; http://sub.domain.com