Amazon S3似乎阻止了cloudflare IP地址。 我该如何解决?

我有由Cloudflare服务的静态内容。 Cloudflare指向Amazon S3以获取静态内容并通过CNAME(cdn.mydomain.com)提供。 桶设置正确,一切工作正常,直到星期五,当我开始在我的浏览器中请求超时。 我证实,内容仍然可以通过S3访问,并打开了与Cloudflare票。 Cloudflare报告说:“在亚马逊出现的东西可能会阻止来自我们IP的请求”,并且他们在日志中看到以下消息:

upstream timed out (110: Connection timed out) while reading response header from upstream cdn.mydomain.com upstream prematurely closed connection while reading response header from upstream cdn.mydomain.com 

这是我已经在我的CORS文件中。

 <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <MaxAgeSeconds>3000</MaxAgeSeconds> <AllowedHeader>Authorization</AllowedHeader> </CORSRule> 

我应该把*放在AllowedHeader? 我需要明确指定Cloudflare IP地址吗? 我错过了什么,以避免块?

    是否有任何理由不使用由S3存储桶支持的Amazon CloudFront分配来提供静态内容? 应该比CloudFlare – > S3更有效率,如果Amazon确实阻止CloudFlare访问S3(尽pipe这样做没有多大意义,那么为什么他们会这样做),这对你来说不再是个问题。

    您还可以将您的cdn.mydomain.com主机名CNAMElogging到[distribution_id] .cloudfront.net以保留您的URLscheme,并保持转换对用户透明。 CloudFront的操作方式与CloudFlare非常相似,因为它们的IP地址是通过BGP路由到全球最近的位置,但是Amazon将在内部具有更高效的CloudFront – > S3提取系统。

    据我所知,S3和CloudFront之间的转换是免费的,所以你不会花多less钱(如果有的话)带宽。