创建亚马逊云AWS S3云存储静态文件且可绑定自定义域名

老乐 工具软件9字数 1813阅读6分2秒阅读模式

亚马逊云AWS有提供S3云存储,我们可以将利用这个云存储将网站的静态文件分离或者是用这个云存储单独存储私有或者公有的文件分享。当然,任何AWS用户拥有免费5GB的存储空间,甚至这个空间支持绑定自己的域名。我们有些朋友还利用这个空间搭建个人静态网页。

在这篇文章中,我们准备记录如何利用亚马逊云AWS S3云存储空间创建存储桶且支持开放外部访问,当然包括支持绑定自己的域名的过程。

我们初始进入亚马逊云的话,可以在右上角选择你准备的区域,这里我默认选择的是美国东部地区,这样直接创建就默认这个地区,你也可以选择其他地区。如上图,设置存储桶名称,建议唯一性我们可以设置自己后面要绑定的域名的名称,这样也方便记忆。

在公共访问权限的时候先根据建议勾选阻止公开访问。后续应该是可以用策略开启URL访问公网的。如果后续不可以访问,这里我们再全部放行。

其他先默认创建再说。

我们先上传一个静态文件到S3存储中,然后打开这个文件看到对象URL,复制到浏览器打开看看。

看到无权限打开的。我们需要解决这个问题。

我们需要到当前存储桶中的「属性」拖动页面到最下面看到如上图的 「静态网站托管」默认是关闭禁止的,我们需要开启。

我们先默认索引文档写index.html作为默认主页,如果我们是用来做静态个人主页的也可以根据需要设置。这里不写就不行。

保存后,我们再刷新静态URL的页面还是不可以。那问题在哪里呢?

我们再回到上图中的 「权限」菜单。我们需要设置下面的 「存储桶策略」。

不过修改的策略居然无法保存,看来还是前面提到的公开权限需要启动。

还是要编辑把屏蔽公共访问权限关闭掉。

填写规则是:

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "AllowPublicRead",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::存储桶名称/*"
        }
    ]
}

主要是最后一行的Resource 修改成我们自己的存储桶名称即可。保存后我们再访问之前模拟演示上传的index.html是可以公开访问的。

如果我们需要自定义域名创建存储桶的时候,设置域名作为存储桶名称,然后将你的域名别名解析到对应亚马逊云分配的地址。

举个例子:

假设想要用域名S3.zhujipingjia.com访问S3上的一个存储桶,那么S3上存储桶的名称就必须是s3.zhujipingjia.com。假设这个存储桶是us-west-1可用区的,那么S3默认提供的资源访问域名就是s3.zhujipingjia.com.s3-us-west-1.amazonaws.com。给域名s3.zhujipingjia.com做CNAME解析到s3.zhujipingjia.com.s3-us-west-1.amazonaws.com即可。

至此,我们可以完成当前S3存储的公开访问。但是现在还需要做的事情就是绑定自己的域名,同时我们一般还需要给域名用到HTTPS。

访问到亚马逊云的 「AWS Certificate Manager」,我们需要申请SSL证书。

根据向导,我们可以请求公有证书。

输入我们需要申请的证书域名,以及域名验证所有权方式可以选择DNS或者电子邮件验证。其他的默认即可提交。这里我用的是DNS验证。

根据提示,我们设置CNAME解析,等待验证自动会成功。

这里我们可以看到「已颁发」的字样说明证书申请成功。

我们在SSL证书申请好之后,你也可以给你的S3存储桶创建添加CloudFront CDN加速的时候引用存储桶的时候可以同步选择已经配置的SSL证书。

如果我们确实需要绑定自己域名的话,我们建议创建S3云存储的时候,用的桶名称就用自己准备的自定义域名。

我们要知道,亚马逊云也有免费提供CDN服务,他们的CDN服务是CloudFront。我们创建CDN的时候可以选择到自己S3的云存储,主要是在上图这里,备用域名这里要输入我们的自定义域名。以及选择我们自定义的SSL证书,这样启动之后,我们可以看分配给我们的CDN的域名。

我们需要在域名的DNS解析中添加CNAME的解析指向CDN的分配的域名。这样我们就可以用自己的自定义域名打开存储在S3的内容且中间也用到亚马逊云的CDN加速。

5/5 - (1 票)
 
  • 本文由 老乐 发表于 2024年7月19日 14:38:07
  • 转载请务必保留本文链接:https://www.zhujipingjia.com/asws3-setting-domain.html
  • 亚马逊云S3
  • 亚马逊云云存储
  • S3绑定域名