使用 VPS 让 Hexo 博客快的飞起
给 Hexo 提速是个费力的事。多么良心 GitHub 国内已阉成龟速,心疼开发者一秒。
给 Hexo 提速方案有哪些?从最省钱的说吧。
- 用
hexo-neat
或hexo-all-minifier
等插件压缩js/css/html/images
等文件。 - 采用图床,例如:极简图床 、七牛、又拍云等。
- CDN 加速,这个通常要收费。
- 国内走 Coding.net,分流加速。
- VPS 直接访问自己服务器。
压缩静态文件会大大增加 hexo g
生成博客时间,假如有 VPS 把这工作交给服务器倒是不错的选择。不知阿里云的 code.aliyun.com 里自动化工具能否实现免 VPS 自动化。但这也有个问题,生成工作给了服务器,如果执行过程出错怎么办?还得有报错机制,感觉复杂了。
图床为图片加速是不错的选择,我就用七牛的加速,只需在图片前加个前缀,就能实现 CDN,赞一个!
CDN 加速,似乎腾迅云有活动,半年免费。但毕竟收费的服务,而且不知 CDN 缓存问题是否已解决。
Coding.net 是会员才能自定义域名?不考虑了。
对,本文重点是有 VPS 的同学,自己动手丰衣足食。这个方案还一举解决了 GitHub Pages
不被百度收录的问题,爬虫被拒了。在国内用百度的人还是很可观的哇。
简单讲下思路吧,毕竟很多前辈们已讲的够清楚了。
- 在 VPS 上建
bare
类型 Git 仓库,用作 Hexo 提交的一个远程 Repo。例如:/var/repo/zwb.io.git
- 给自己网站建个文件夹。例如:
/var/www/zwb.io
- 修改
Nginx
配Server
指向网站目录。 - 配 git 钩子
post-receive
,本地push
上来后,同步到网站目录/var/www/zwb.io
- 新建个 git 用户,把 Repo 与网站目录都给其权限,同时给
post-receive
可执行权限。 - 配置 VPS ssh 与本地 ssh 通信。
- 本地
_config
里deploy
添加自己 VPS repo 地址。 - 域名解析,指向 VPS IP。
把用到的命令,简单的写下吧
1
2
3
4
5
6
7
8mkdir /var/repo
git init --bare /var/repo/zwb.io.git
mkdir /var/www/
mkdir /var/www/zwb.io
whereis nginx
vim nginx.conf1
2
3
4
5server {
listen 80 default_server;
server_name zwb.io wenboz.com;
root /var/www/zwb.io;
}vim /var/repo/zwb.io.git/hooks/post-receive
1
2
git --work-tree=/var/www/zwb.io --git-dir=/var/repo/zwb.io.git checkout -fchmod +x /var/repo/zwb.io.git/hooks/post-receive
创建 git user,并赋权限
1
2
3useradd -d /home/git -m git
sudo chown git:git /var/www/zwb.io
sudo chown git:git /var/repo/zwb.io.git配置 ssh-key
1
2
3
4ssh-keygen -t rsa -f ~/.ssh/id_rsa_vps -C "yourmail@xxx.com"
cat ~/.ssh/id_rsa_vps.pub
vim ~/.ssh/config1
2
3
4
5# two
Host test.com
HostName yourIp
User git
IdentityFile ~/.ssh/id_rsa_vps1
2# 本地 cat ~/.ssh/id_rsa_vps.pub 复制到VPS ~/.ssh/authorized_keys
vim /etc/ssh/sshd_config1
2
3
4
5RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes # 允许 root 用户 SSH 登陆
PasswordAuthentication no # 禁用密码登陆1
2
3
4
5chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
# 重启服务
service sshd restart编辑
_config
,参考:Deployment最后,改下域名指向,完成。
参考
使用 Git Hook 自动部署 Hexo 到个人 VPS
Hexo的Git部署,一行命令部署到GitHub和自己的VPS
Hexo 个人博客部署到 CentOS 个人服务器
linux下ssh公钥验证的设置和远程登录
一台电脑绑定两个github帐号教程
CentOS-6.9 安装 Nginx
- 本文链接:https://www.wenboz.com/p/6612.html
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!