【问题标题】:Cloudflare-S3 HTTPS handshakeCloudflare-S3 HTTPS 握手
【发布时间】:2019-05-22 13:41:23
【问题描述】:

我已将我的静态文件上传到 S3。为了将我的文件缓存到 CDN(并降低 aws 成本 + 更好的 SEO 结果),我正在使用 cloudflare。

我的存储桶名称是cdn.mydomainname.com

我的 Cloudflare CNAME 配置是 cdn (name)cdn.mydomainname.com.region_code.s3.amazonaws.com(alias)

但是,有一个问题。每当我浏览我的网页时,由于https 错误声明Your connection is not private 而不会加载静态文件。接受后,我的图片 url cdn.mydomainname.com/image.jpeg 被重定向到 https://region_code.amazonaws.com/cdn-mydomainname-com/image.jpeg。现在,当我检查我的网络日志时,Cloudflare 没有缓存该图像,正如我在下面的响应标头中看到的那样。

Server: AmazonS3
x-amz-id-2: some_id
x-amz-request-id: some_id

我已经阅读了多个博客、SO 问题和文档,但我无法找到解决方案。

有些人建议不要将存储桶名称用作cdn.mydomainname.com。而是使用 cdn-mydomainname-com 之类的东西。

现在我的 Cloudflare CNAME 配置是 cdn (name)cdn-mydomainname-com.region_code.s3.amazonaws.com(alias)

它有两个问题。

1) 我的网址不会很漂亮 (https://region_code.amazonaws.com/cdn-mydomainname-com/image.jpeg)。这将对我的 SEO 产生负面影响。

2) 它再次显示与之前相同的响应标头。

Server: AmazonS3
x-amz-id-2: some_id
x-amz-request-id: some_id

可以做些什么来遏制这种情况?我哪里错了

更新

我尝试在我的服务器上托管一个静态文件,该文件是从 Cloudflare 提供的,如响应标头中所检查的 (CF-CACHE-STATUS: HIT)

【问题讨论】:

    标签: amazon-s3 https cdn cloudflare


    【解决方案1】:

    尝试将 CloudFlare 的 CNAME 指向

    cdn-mydomainname-com.region_code.s3.amazonaws.com
    

    但将您的存储桶名称保留为

    cdn.mydomainname.com
    

    并在

    访问您的图像
    cdn.mydomainname.com/myimage
    

    S3 将使用 CloudFlare 在查找存储桶而不是子域时发送的主机名。事实上,您可以在 CloudFlare 中放置您想要的任何子域。重要的部分是子域中没有点。 S3 提供给 CloudFlare 的证书是通配符形式的证书

    *.region_code.s3.amazonasw.com
    

    所以 CloudFlare 将接受它作为对

    有效

    cdn-mydomainname-com.region_code.s3.amazonaws.com

    并且图像将根据需要通过 CloudFlare。

    【讨论】:

      猜你喜欢
      • 2017-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-31
      • 1970-01-01
      • 2018-08-23
      相关资源
      最近更新 更多