短短的序
最近我把博客从hexo迁移到了halo上,虽然官方指南写的很详细,但是对于新手来说难免有些坑,所以我从服务器选购到部署上线,一步步教你拥有一个自己的博客.
本文面向对象: 新手
本文最低要求: 知道最基本的linux命令.以及一颗求知的心
费用: 域名 70/year + vps 30/month
- 本文大概分为四部分:
- 服务器购买与配置
- 域名购买与配置
- 配置halo博客服务
- 配置博客后台
1服务器购买与配置
购买之前几点说明:
- 购买国内的服务器需要备案,比较麻烦,加上与与互联网的自由思想相悖,所以本文选购的是国外的服务器.
- 由于是博客网站所以访问速度问题是不需要担心的.
- 为保险起见,请不要在服务器上安装任何隧道服务,一旦被墙,得不偿失.如果真的有必要,可以选择更加安全的V2ray服务.
挑选服务商
不建议选择主流服务商像vultr,搬瓦工等,即使正常使用也很有可能被墙.
选择自己喜欢的服务商即可.这里有评比可以自己选.这次我们选择的是hostwinds.
购买VPS
注册帐号后(尽量选择国外邮箱,以免拦截),进入购买界面购买,一般的博客选最便宜的就够用.
进入支付界面后滑到最下面完成支付.hostwinds是支持支付宝支付的.
完成支付后进入用户界面,点击manage获取服务器ip和密码.
点击view passwd复制密码
服务器配置
这里我们只需要通过ssh登录到服务器,修改密码.
mac或者linux用户: 直接使用终端通过ssh连接-- ssh root@your_vps_ip
windows用户: 看这里
登录到服务器后输入passwd root
修改密码方便以后登录管理.
安装vim方便以后编辑: yum install vim -y
域名购买与配置
人怎么能没有自己的域名呢. -我说的
不是我黑,不要购买任何.cn域名,就像房屋一样只有使用权.都是血的教训.
这里选择的是namesilo的服务.不要图便宜买几块钱注册的和那种免费的(天下没有免费的午餐和 域名 🙂).
搜索自己喜欢的域名,如果还有没有人注册,那么你就能注册了,傻瓜式操作,注册-> 登录-> 交钱(同样支持支付宝).
完成支付后,进入自己的账户,选择自己的域名,然后点击后面的DNS选项,就是画着蓝色小球的那个.
创建一项A记录,填入自己服务器的ip即可.
配置halo博客服务
首先你可以看halo的官方文档,这里不过是更详细的一点说明.
更新软件包
sudo yum update -y
安装 Java 运行环境
# 安装 OpenJDK 软件包
sudo yum install java-1.8.0-openjdk -y
# 检测是否安装成功,如果成功会有版本号输出.
java -version
如果安装失败还以通过手动安装, 看这里,并不需要图形界面,即可完成安装.
正式安装halo
下载halo的配置模板
# 下载配置文件到 ~/.halo 目录
curl -o ~/.halo/application.yaml --create-dirs http://halo.ryanc.cc/config/application-template.yaml
对于新手(比如我)来说,能不改的尽量不要改,以免引起未知的错误(比如我).
运行 Halo
Halo 的整个应用程序只有一个 Jar 包,且不包含用户的任何配置,它放在任何目录都是可行的。需要注意的是,Halo 的整个额外文件全部存放在 /.halo 目录下,包括 application.yaml(用户配置文件),template/themes(主题目录),upload(附件上传目录),halo.db.mv(数据库文件)。一定要保证 /.halo 的存在,你博客的所有资料可都存在里面。所以你完全不需要担心安装包的安危,它仅仅是个服务而已。
wget http://halo.ryanc.cc/release/halo-latest.jar -O halo-latest.jar
- 启动测试
java -jar halo-latest.jar
如果看到如下日志输出说明,halo运行成功.
run.halo.app.listener.StartedListener : Halo started at http://127.0.0.1:8090
run.halo.app.listener.StartedListener : Halo admin started at http://127.0.0.1:8090/admin
- 设置halo服务及开机启动
下面的内容由于服务器重启写了两遍,哭了.
所以不要在后台写博客 🙂
下载halo.server的模板:
sudo curl -o /etc/systemd/system/halo.service --create-dirs http://halo.ryanc.cc/config/halo.service
修改模板:
sudo vim /etc/systemd/system/halo.service
<img src="https://gitee.com/fraze700/img/raw/master/rem.png" style="zoom:50%;" />
只需要把ExecStart行中的JARPATH
改为your_halo_path
如果按照我的步骤来的话应该是/root/halo-latest.jar
.
# 修改 service 文件之后需要刷新 Systemd
sudo systemctl daemon-reload
# 使 Halo 开机自启
sudo systemctl enable halo
# 启动 Halo
sudo service halo start
查看halo运行状态
sudo service halo status
如果成功会显示active
.
设置域名访问
由于我在案长nginx时遇到问题,以及Caddy反向代理的配置要简单的多,所以下文以Caddy为例.
Caddy
是一款使用 Go
语言开发的 Web
服务器。其配置更为简洁,并可以自动申请及配置 SSL 证书(推荐)。
安装Caddy
yum install caddy -y
配置Caddy
下载caddy配置模板
curl -o /etc/caddy/conf.d/Caddyfile.conf --create-dirs http://halo.ryanc.cc/config/Caddyfile
修改Caddy配置文件
vim /etc/caddy/conf.d/Caddyfile.conf
按照下图对Caddy进行配置.
需要修改的有:
加入两项重定向,把http地址重定向到https.只需要把图中的域名修改为自己的.
注意图中有的大括号需要在前面加上一个空格,不然启动会出错.
将tls选项中的邮箱改为你自己的邮箱
下面proxy的端口不需要修改,保持默认即可.
修改完成之后启动 Caddy
服务即可。
# 开启自启 Caddy 服务
systemctl enable caddy
# 启动 Caddy
service caddy start
查看Caddy运行状态.
service caddy status
到这里,服务端的配置已经完成了,最好重启以下,并重新查看运行状态.
博客后台配置
- 使用游览器访问你的ip完成帐号密码设置.
- 在地址栏使用
your_domain/admin
进入博客后台.点击系统,博客设置.把博客地址选项改为:https://your_domain
- 好了,到现在所有的设置都完成了,也就是说你已经有一个自己的博客了.至于剩下的路就需要你自己走了.
本文结束.
参考: halo官方文档