【问题标题】:Modifying CDN Migration Paths修改 CDN 迁移路径
【发布时间】:2015-09-28 08:10:34
【问题描述】:

我正在尝试将 CDN 从机架空间迁移到 aws。

在前者中,所有内容都通过 CNAME 记录映射到单个容器,如下所示:

container1  =   CNAME   =   container1.cdndomain
container2  =   CNAME   =   container2.cdndomain
container3  =   CNAME   =   container3.cdndomain

当我们设置 aws 时,我读到的所有内容都说设置一个(仅)一个带有各种存储桶的云端。所以这就是我所做的。

现在我正试图以某种方式将所有这些容器重新映射到他们的新 aws 主页和相应的“存储桶”中,但单一的云端让我很难。

我宁愿不检查数千行代码和配置文件并更改所有当前 url(例如手动将 container1.cdndomain 更改为 cdndomain/container1)。

但我找不到重新映射的方法

this:  http://bgimgs.cdndomain/image

对于它的 aws 对应物

here:   http://cdndomain/bucket/image

我们使用 Zerigo 作为 DNS,接口将接受这个 CNAME 路径:

container.domain  =  CNAME = cdndomain/bucket

但 aws 不会将其路由到正确的存储桶。

我尝试了 .htaccess 解决方案

RewriteEngine On
RewriteCond %{HTTP_HOST} ^container1\.cdndomain(.*)$ [NC]
RewriteRule ^(.*)$ http:\/\/cdndomain/container1/$1 [L,R=301]

但这也行不通。

有什么想法吗?

【问题讨论】:

    标签: amazon-s3 cdn amazon-cloudfront


    【解决方案1】:

    我不知道只使用一个 CloudFront 分配和多个 S3 存储桶的建议来自哪里。当然,你可以,但如果它不符合你的需求,你没有理由应该

    只需创建多个发行版。

    如果您已经使用不同的主机名访问它们,它们是不同的对象集合,我实际上想不出这样的建议适用于您的情况的任何原因。想到建议您仅使用一个 CloudFront 发行版和多个存储桶的唯一原因是将所有内容(来自不同存储桶)存储在一个主机名之后,或者在具有相同路径的多个主机名之后 用于每个主机名(让浏览器更快地加载资产的技巧是让浏览器相信资产都来自不同的主机,因此浏览器将打开更多并行连接)。

    在您的情况下,这似乎根本不是您所需要的。分发本身是免费的。问题解决了。

    关于 DNS,其他供应商可能接受该配置,但这并不意味着它是一个有效配置。它不是。您不能使用 DNS 更改路径。

    关于.htaccess,S3 不处理.htaccess 文件。如果您在 Web 服务器上创建它们,那也是不行的,因为 Web 服务器不会看到请求以重定向它们。

    【讨论】:

    • 感谢您的回答,迈克尔。您对 DNS 的看法是正确的。它实际上并没有路由 /*.我确实在 cdndomain 上设置了一个域,因此我完全有能力在该域中定义一个 .htaccess。除了重写所有链接或设置一堆云端之外,还没有找到解决方案。这些可能只是唯一的方法。
    • 根据您已有的情况,我看不到另一个简单、简单、有弹性的解决方案......但我不仅认为创建多个云端发行版没有问题,而且没有明显的优势试图避免它,因为您现有的代码已经在访问不同的主机名。
    • 当然,使用与 S3 存储桶位于同一区域的 EC2 上的 HAProxy 可以轻松完成,配置为 Cloudfront 自定义源(然后中继到存储桶),因为 HAProxy 允许选择目标路由 基于Host:标头的URL重写,Cloudfront可以配置为转发到自定义源。当然,灵活性的提高是以复杂性增加为代价的。但这是我在某些场景中用于重写路径或在通往 S3 的途中选择存储桶的解决方案。 (区域内的 EC2/S3 流量是免费的,因此流量没有成本)。
    猜你喜欢
    • 2015-11-10
    • 2017-12-18
    • 2010-11-02
    • 2013-08-21
    • 2021-08-30
    • 2018-07-09
    • 2020-04-29
    • 2018-10-22
    • 2022-07-12
    相关资源
    最近更新 更多