尝试使用阿里云OSS静态托管网站

云服务器要到期了,续费太贵,上面也没有什么服务,干脆直接托管到对象存储上了。

注册域名

几年前就注册好了。

注意,必须要有域名,不然静态网站托管不了。

创建 Bucket

  • Bucket 名称:自己写
  • 地域:选择 Bucket 所在地域,随便
  • 存储类型:选择标准存储
  • 读写权限:选择公共读(会有安全警告,不用管)

创建 AccessKey

根据网页提示进行操作即可。

注意保密

下载 ossutil 工具

为了把网页传到 OSS 上,有多个选择,简单起见这里用命令行工具 ossutil

下载地址和安装说明

配置完成后试一下,能正常列出 Bucket 列表就没问题。

PS C:\Users\Davy> ossutil64.exe ls
CreationTime                                 Region    StorageClass    BucketName
2022-10-27 13:51:57 +0800 CST       oss-cn-hangzhou        Standard    oss://davycloud

生成网站

hugo --gc --minify --buildFuture

[[使用 Hugo 创建静态网站]]

上传网站

ossutil64 cp -urf public/ oss://davycloud/

查看详细的选项说明:

ossutil64.exe help cp

初次上传有点慢,一千多个文件花了大概 20 秒:

E:\GitHub\davycloud\website>ossutil64 cp -urf public/ oss://davycloud/
Total num: 1132, size: 43,962,750. Dealed num: 294(upload 227 files, 67 directories), OK size: 13,027,113, Progress: 29.6Total num: 1132, size: 43,962,750. Dealed num: 566(upload 484 files, 82 directories), OK size: 26,645,759, Progress: 60.6Total num: 1132, size: 43,962,750. Dealed num: 853(upload 734 files, 119 directories), OK size: 38,076,510, Progress: 86.

Succeed: Total num: 1132, size: 43,962,750. OK num: 1132(upload 898 files, 234 directories).

average speed 2260000(byte/s)

19.475890(s) elapsed

紧接着又重新执行了一遍:

E:\GitHub\davycloud\website>ossutil64 cp -urf public/ oss://davycloud/
Total num: 1132, size: 43,962,750. Dealed num: 607(skip 607 files), OK size: 28,725,633, Progress: 65.341%, Speed: 0.00KB

Succeed: Total num: 1132, size: 43,962,750. OK num: 1132(skip 1132 files), Skip size: 43,962,750.

average speed 0(byte/s)

9.009816(s) elapsed

虽然使用了增量更新模式,但是还是有点慢,主要是要查询存储服务器的文件状态比较耗时。

通过添加 --snapshot-path 选项可以(在一定情况下)大幅减少消耗的时间:

PS E:\GitHub\davycloud\website> ossutil64 cp public/ oss://davycloud/ -ru --snapshot-path ../.snap
Succeed: Total num: 1132, size: 43,888,392. OK num: 1132(skip 1132 files), Skip size: 43,888,392.

average speed 0(byte/s)

0.073271(s) elapsed

注意,第一次使用 snapshot 的时候必须是一次全量传输,不然没有记录下文件信息还是无法节约时间。

由于每次 Hugo 构建网站的时候,还是会涉及很多文件的修改,所以当有新文章的时候效果仍然不明显。

配置静态网页

配置完成后,如果直接通过 OSS 的 URL 去访问,不会打开页面,而是下载 index.html。这是阿里云的安全策略决定的,只能通过绑定自定义域名解决。

绑定域名

绑定自定义域名

现在可以访问 http://blog.davycloud.com/

主域名现在解析在别处,这里使用二级域名,blog.davycloud.com

配置 HTTPS

阿里云提供了免费的证书,有效期一年

先选择立即购买,购买 20 个足够用了。

购买完成后点击创建证书,然后输入想绑定的域名即可。

申请成功后回到 OSS 管理页面,点击证书托管,可以看到相应的证书,选择上传即可。

大概几分钟即可生效。

开启 CDN(可选)

参考 :

帮助文档

Davy
Davy
学习📚 技术👨‍💻 投资📈

一些心得体会,希望能对你有所帮助🚀。