我最开始的个人博客是用 GitHub Pages 搭建的,后来在搬瓦工租了一个每年 20 刀的 VPS,就把博客转移到这上面了,前段时间因为没有及时续费被删除了,今天重新配置了一下,把过程记录下来以便以后参考。
配置 SSH 访问
比起密码,使用 ssh 秘钥访问服务器更方便和安全,需要把本地的公钥添加到服务器的 authorized_keys 文件中,我本地的 ~/.ssh/config
文件里面有如下配置:
Host matrix |
通过 scp 命令(需要输入密码)直接把 ~/.ssh/id_rsa.pub
文件上传到服务器上,然后登陆服务器将文件重命名为 authorized_keys:
local |
搭建 Git 服务器
我的博客是用 Hexo 引擎生成的静态网站,所以想到如果在 VPS 上面搭建一个 Git 服务器,每次在本地生成静态文件后提交到 Git 仓库,就能完成更新了,就能和 GitHub Pages 一样方便,配置方法参考了廖雪峰的文章搭建 Git 服务器:
remote |
安装 Web 服务器
要能够访问网站的静态页面,还需要一个 Web 服务器,我使用的是 Nginx,按照官方教程安装即可,安装后在 nginx.conf 配置访问根路径到 /home/git/hexo
然后启动 Nginx 就可以了:
vim /etc/yum.repos.d/nginx.repo |
配置 HTTPS 访问
现在 Chrome 浏览器默认会强制跳转 HTTPS 域名,可以申请 Let’s Encrypt 提供的 HTTPS 证书,这需要使用一个叫做 certbot 的工具,这个工具的运行需要依赖 Python3,所以首先安装下 Python3:
yum install gcc openssl-devel |
安装完 Python3 之后,就可以按照官方教程下载和运行 certbot 了:
安装 |
运行后按照提示填写必要的信息,cerbot 会帮你把 HTTPS 证书下载到本地,并在 nginx.conf 中添加必要的语句,最后重启下 Nginx 就大功告成了,下面是我的 nginx.conf 文件的核心配置部分:
http { |