通过 hexo+serverless 快速搭建并部署一个自己博客,小白也能搞定(二)

本文最后更新于:9 天前

继续接上一篇

serverless 部署

选择serverless的原因,一方面是国内服务器,访问速度很快;另一方面是serverless本身也很划算,每个月都有免费的额度,对于个人博客站点,基本上也是不花钱的。

现在国内最大的应该就是阿里云和腾讯云两家了,我用的是腾讯云的serverless。

关于serverless相关的概念知识点比较多,对于非专业人士确实有很高的学习成本,官方文档都跟小说似的太多了。大家可以去感受一下https://cloud.tencent.com/document/product

添加配置文件

首先你得有一个腾讯云的账户,没有自己去官网注册一个,建议绑定微信扫码登录,后面会方便很多。

接下来就在我们的项目根目录里面添加一个腾讯云的配置文件serverless.yml,然后输入以下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# serverless.yml
component: website # (必填) 引用 component 的名称,当前用到的是 tencent-website 组件
name: hexoComponent # (必填) 该 website 组件创建的实例名称
app: websiteApp # (可选) 该 website 应用名称
stage: dev # (可选) 用于区分环境信息,默认值是 dev
inputs:
src:
src: ./public # Upload static files generated by HEXO
index: index.html
# dist: ./dist
# hook: npm run build
# websitePath: ./
region: ap-guangzhou
bucketName: my-bucket
protocol: https

其中主要就是inputs.src.src要指定正确,因为hexo生成的站点页面,默认是放在public下的,所以这里就需要指定目录为./publicindex字段站点的入口,一般都是index.html就行了。其他的一些配置信息,刚开始不明白可以先不要动。

腾讯云的配置文件有了,站点页面也有了,现在就需要将本地的项目上传到腾讯云空间中去。

cli 命令安装

先在本地安装serverless命令:

1
2
3
4
npm install -g serverless

# 安装完成后,查看版本信息,确认是否安装成功
serverless -v

其实上一步的配置文件也可以通过该命令生成:

命令行输入serverless,然后选择website-starter - 快速部署一个静态网站,也可以生成配置文件信息,但是上面提到的入口src一定要改成./public

部署到腾讯云

1
2
3
4
5
# 先生成静态页面到 public 目录
hexo g

# 部署到腾讯云
serverless deploy

serverless deploy命令需要授权,如果腾讯云绑定了微信,直接用微信扫码就可以了。更多详情配置和用法可以参考腾讯云官方文档

自定义域名

首先需要自己拥有一个域名,没有可以自己去注册,用哪一家的产品就建议去哪一家注册域名,后续备案、解析、部署这些都会方便很多。

Github Page 服务

如果你是选择的是Github静态页面托管,那么就不需要进行备案了。

  • 首先在项目中开启相关的配置,设置好域名地址

  • 然后再去域名服务商那里将域名解析到github的提供的域名地址,注意记录类型要选择CNAME

腾讯云服务

如果是腾讯云部署,自定义域名就会麻烦一些,首选域名必须要先进行备案。备案的话建议使用腾讯云提供的域名备案流程来一步一步进行,有什么问题腾讯云客服都会给予指导,备案相对会简单很多。

假如你已经有了一个备案的域名,首先打开腾讯云的对象储存服务,然后选择博客项目中配置的bucketName关联的存储桶进行自定义域名的配置。

SSL证书

现在腾讯云官方有提供免费的SSL证书服务,不过有效期只有1年,到期之后再重新申请就行了。申请完证书之后,再回到腾讯云对应的bucket自定义域名那里,配置就行了。

如果用腾讯云绑定了自定义的域名,必须在博客站点的底部添加备案号等信息,否则有可能会被注销备案,这是所有国内网站强制性的要求。在此也提醒大家,在网络上传播和发布任何东西,一定要遵纪守法。

搞定收工

到这里,一个完整的个人博客站点就算全部完成了。后续还可以根据官方的文档进行很多自定义的配置,比如:添加百度、谷歌统计,博客评论等很多个性化配置。

最后,感谢阅读!如果觉得不错,可以关注我的公众号【末日码农】,获取更多相关知识。