Amazon web services 如何将域名或子域别名到AmazonS3-显示子域中的图像

Amazon web services 如何将域名或子域别名到AmazonS3-显示子域中的图像,amazon-web-services,amazon-s3,dns,cname,Amazon Web Services,Amazon S3,Dns,Cname,我在AmazonS3上有一个bucket,其中包含一些jpeg图像。出于搜索引擎优化的目的,我想从我的子域像 目前,我的bucket名称看起来不像子域。它只包含一个破折号,如“我的图像” 在这篇文章中,作者说:创建一个看起来像子域的bucket 那么,我可以用这个bucket名称将我的子域命名为CNAME记录吗 此解决方案也支持作者的想法: 我必须重新命名我的桶吗?是否可以重命名一个bucket?您需要创建一个名为images.example.com的bucket 然后您需要在DNS中对其进行C

我在AmazonS3上有一个bucket,其中包含一些jpeg图像。出于搜索引擎优化的目的,我想从我的子域

目前,我的bucket名称看起来不像子域。它只包含一个破折号,如“我的图像”

在这篇文章中,作者说:创建一个看起来像子域的bucket

那么,我可以用这个bucket名称将我的子域命名为CNAME记录吗

此解决方案也支持作者的想法:


我必须重新命名我的桶吗?是否可以重命名一个bucket?

您需要创建一个名为images.example.com的bucket

然后您需要在DNS中对其进行CNAME

images.example.com->images.example.com.s3.amazonaws.com.

是否可以重命名一个bucket


不,一旦创建了bucket,就不能更改其名称。解决方法是创建一个新的bucket并将文件复制到其中。

您需要创建一个名为images.example.com的bucket

然后您需要在DNS中对其进行CNAME

images.example.com->images.example.com.s3.amazonaws.com.

是否可以重命名一个bucket


不,一旦创建了bucket,就不能更改其名称。解决方法是创建一个新的bucket并将文件复制到其中。

您的bucket名称必须与指向该bucket的CNAME(或别名)记录匹配

bucket名称必须与CNAME相同

无法重命名存储桶。在您提到的另一个答案中,我怀疑这是“重命名”一词的随意使用,它实际上的意思是“使用不同的名称创建一个bucket”,因为:

创建bucket后,不能更改其名称

因此,要将来自某个域的DNS条目直接指向一个bucket,您需要一个具有匹配名称的bucket

但是,有一种替代方案不需要您更改bucket的名称,这可能是一个好主意:您可以在bucket前面使用CloudFront CDN

如果创建CloudFront发行版,您可以告诉CloudFront您打算指向它的DNS名称,然后将CloudFront配置为服务于来自您指定的bucket的请求——在这种情况下,bucket的名称不再重要,因为CloudFront会自动处理主机名到bucket的映射


这进一步提高了缓存图像资产的潜在性能,使其更接近站点的频繁访问者,并允许您将SSL与子域一起用作主机名(使用来自Amazon Certificate Manager的免费SSL证书),这仅适用于CloudFront+S3,不仅仅是S3。

您的bucket名称必须与指向该bucket的CNAME(或别名)记录匹配

bucket名称必须与CNAME相同

无法重命名存储桶。在您提到的另一个答案中,我怀疑这是“重命名”一词的随意使用,它实际上的意思是“使用不同的名称创建一个bucket”,因为:

创建bucket后,不能更改其名称

因此,要将来自某个域的DNS条目直接指向一个bucket,您需要一个具有匹配名称的bucket

但是,有一种替代方案不需要您更改bucket的名称,这可能是一个好主意:您可以在bucket前面使用CloudFront CDN

如果创建CloudFront发行版,您可以告诉CloudFront您打算指向它的DNS名称,然后将CloudFront配置为服务于来自您指定的bucket的请求——在这种情况下,bucket的名称不再重要,因为CloudFront会自动处理主机名到bucket的映射


这进一步提高了缓存图像资产的潜在性能,使其更接近站点的频繁访问者,并允许您将SSL与子域一起用作主机名(使用来自Amazon Certificate Manager的免费SSL证书),这仅适用于CloudFront+S3,而不仅仅是S3

“虽然这不是必须的,但看起来更好。“嗯,是的,这是必须的。您不能将CNAME记录随机指向存储桶。bucket名称必须与完全限定的主机名匹配。感谢@Michael sqlbot我已更正了答案。感谢您更正了答案-1已删除。为了清晰起见,您可能还希望颠倒
CNAME
上的符号,因为
images.example.com
->
images.example.com.s3.amazonaws.com
更准确地反映了所指的内容和s/walk/work/,因为我认为您的意思是“变通方法”。“虽然这不是必须的,但看起来更合适。”,这是必须的。您不能将CNAME记录随机指向存储桶。bucket名称必须与完全限定的主机名匹配。感谢@Michael sqlbot我已更正了答案。感谢您更正了答案-1已删除。为了清晰起见,您可能还希望颠倒
CNAME
上的符号,因为
images.example.com
->
images.example.com.s3.amazonaws.com
更准确地反映了所指向的内容,以及s/walk/work/,因为我假设您的意思是“变通方法”。cloudfront是一种解决方法。事实上,很难想出任何不利因素。cloudfront是一个不错的选择。实际上,很难想出任何不利因素。