选择服务器
大致分为海外服务器和大陆服务器两种
- 海外服务器:通常价格便宜,
主要是没套路,无需备案还能科学上网;但是不稳定。 - 大陆服务器:价格给多给少是个缘,需备案;稳定,适合真正需要博客的人。
大陆服务器比较主流的就是阿里云、腾讯云和华为云
- 阿里云资质最老,质量当然最高,但是续费的价格会让你怀疑人生。
- 腾讯云仅次于阿里云,对新老用户都比较友好。
- 华为云不了解。
建议新用户先选择阿里云,通常
共享型1核2g1M一年80
;续费大概一年近600,实际博客1g即可,续费一年350。如果你接受不了续费到时候再换别的云服务。
购买与实例详情
- 点击阿里云官网:https://www.aliyun.com/
- 选择侧边栏的
云服务器ECS
,进行购买;通常会有很多活动链接,多看看 - 购买后点击首页右上角的
控制台
进入控制面板 - 点击左上角的菜单栏,选择
服务器ECS
,点击实例ID进入实例详情页面
实例详情中包含了服务器的大部分信息,包括
公网ip
购买域名并解析
- 域名购买网址:https://wanwang.aliyun.com/
- 进入控制台,点击侧边栏中的
域名
,第一次需要实名认证,根据步骤来就可以了。(实名认证需要1个工作日,不过通常几个小时就OK了) - 认证完成后在同样的界面中,点击解析-添加记录,需要添加两个,主机记录分别是
www
和@
,记录值全都是你服务器的公网ip
,添加成功后就完成了域名解析
配置安全组规则
进入实例详情页面
,点击侧边栏的本实例安全组-配置规则-添加安全组规则。需要添加3个规则,端口范围分别是:80/80、443/443、8090/8090
授权对象全都是0.0.0.0/0
,其他不变。
其中80和443端口分别对应http和https请求,8090是halo的默认配置需要的端口
备案
在阿里云首页右上角点击备案
,根据步骤一步步完成即可;时间大约需要一周。
建立远程连接
- 进入
实例详情
页面,点击远程连接-VNC - 第一进入会得到6位
实例密码
,请牢记;login是用户名随便填,密码是远程连接密码(VNC密码)
,如果你不知道了可以,在实例详情页面的左上角点击返回按捏进入实例列表
页面,在更多-密码/密钥中修改你的密码 - 当成功进入一次VNC后,你就可以选择使用这个阿里云自带的或者自己的SSH工具了
安装Halo
按照用户文档在 Linux 服务器部署 Halo,进行安装。
核心步骤:
# 更新软件包
sudo yum update -y
# 安装 OpenJRE
sudo yum install java-1.8.0-openjdk -y
# 下载配置文件到 ~/.halo 目录
curl -o ~/.halo/application.yaml --create-dirs http://halo.ryanc.cc/config/application-template.yaml
# 下载最新的 Halo 安装包
wget http://halo.ryanc.cc/release/halo-latest.jar -O halo-latest.jar
# 下载 Halo 官方的 halo.service 模板
sudo curl -o /etc/systemd/system/halo.service --create-dirs http://halo.ryanc.cc/config/halo.service
# 修改 halo.service,将JAR_PATH修改为Halo安装包的绝对路径
sudo vim /etc/systemd/system/halo.service
# 修改 service 文件之后需要刷新 Systemd
sudo systemctl daemon-reload
# 使 Halo 开机自启
sudo systemctl enable halo
# 启动 Halo
sudo service halo start
# 查看 Halo 的运行状态
sudo service halo status
请确保Halo的运行状态
完成以上操作即可通过 IP:端口 访问了。
配置域名访问
按照用户文档配置域名访问,进行配置
核心步骤:
# 安装 Caddy 软件包
yum install caddy -y
# 下载 Halo 官方的 Caddy 配置模板
curl -o /etc/caddy/conf.d/Caddyfile.conf --create-dirs http://halo.ryanc.cc/config/Caddyfile
# 使用 vim 编辑 Caddyfile
vim /etc/caddy/conf.d/Caddyfile.conf
#模版修改为
https://ryanc.cc {
redir https://www.ryanc.cc{url}
}
https://www.ryanc.cc {
gzip
tls i@ryanc.cc
proxy / localhost:8090 {
transparent
}
}
#请把 其中的域名 改为自己的域名。
#tls 后面的 xxxx@xxx.xx 改为自己的邮箱地址。
#请将 port 修改为 Halo 的运行端口,默认为 8090
# 开启自启 Caddy 服务
systemctl enable caddy
# 启动 Caddy
service caddy start
# 重启 Caddy
service caddy restart
# 查看 Caddy 运行状态
service caddy status
到这里,关于 Caddy 反向代理的配置也就完成了,现在你可以访问一下自己的域名,并进行 Halo 的初始化了。
每次修改完 Caddyfile 都要重启Caddy
请一定记得去 halo 的管理端设置一下正确的博客地址,否则会造成资源获取不成功。
如何备份
你的博客文章、主题样式等等所有的数据都储存在~/.halo
文件夹中,因此备份此文件夹即可。选择系统-小工具-备份进行建立备份,点击即可下载。
如果你删除.halo文件无法初始化并报错,请在你的项目中执行以下指令
git submodule init
git submodule update
Q.E.D.