我正在使用Amazon S3托管我的一个静态站点,并希望将其链接到我的域名(domainname.co.uk)。因此,我进入了名称便宜的帐户-所有主机记录,并做了类似的事情,
但是,它仍然不起作用,当我转到网站网址时会抛出404。顺便说一句,在www选项下,我正在使用我的S3网址conxxxxxxxxxxx.co.uk.s3-website-eu-west-1.amazonaws.com.
。
请注意最后一个点,当我尝试保存时,即使没有点,Namecheap也会自动添加该点。我不确定这是否是导致问题的原因,但对我而言不起作用。
直接转到我的AWS URL可以正常工作,这意味着我的CNAME设置有问题。
有人知道这里做错了什么吗? Namecheap的支持也完全没有任何线索。
最佳答案
如果存储桶名称与CNAME匹配,则只能对Amazon S3使用自定义CNAME。
例如,如果您的存储桶名为:
files.example.com
因此默认情况下可通过以下位置访问:
files.example.com.s3-website-us-east-1.amazonaws.com.
从
files.example.com
到完整存储桶域名的CNAME将允许您使用自定义域。但是,如果您的存储桶名称与您要定义的CNAME不完全相同,则它将不起作用。在屏幕快照中,您尝试使用
www....
作为您的CNAME,但是(已编辑的)存储桶名称不包含www.
。注意“完全”包括区分大小写;您的存储桶名称必须全部小写,CNAME才能正常工作。此功能的完整文档在这里:http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingCustomURLs
如果您想要/需要多个CNAME,和/或与存储桶名称不匹配的CNAME,则Amazon CloudFront允许您为部署指定任意CNAME。
关于amazon-s3 - 如何在Namecheap上为Amazon S3设置CNAME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11493426/