hexo部署到腾讯云
最近发现腾讯云搞活动,然后就心血来潮买了个服务器,感觉是挺便宜的(肯定是腾讯的套路),还续费了2年,希望自己能玩好这台服务器。昨天刚买完之后,一直在想不知道用来干嘛,想到现在还是不清楚要搞些撒东西出来,所以索性就先把博客迁移到这台服务器吧。
服务器配置
安装Git
yum -y update
yum install -y git nginx
安装git是因为hexo部署静态资源的时候需要有个git仓库
安装nginx用来部署hexo静态资源文件
git安装后需要配置公钥,打开以下文件,把需要部署的客户端的公钥复制到这个文件中就行,这个操作在部署hexo的时候可以跳过openssh的密码验证。(可以不操作,操作更好)
在服务器上操作
vim ~/.ssh/authorized_keys
在hexo客户端中操作
打开GIT GUI 找到HELP找到SHOW SSH KEY
1 | ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyPyy6mKAQrVQXVWCJ/2SeIDxF6a5FA8exlTTBtuAJZawpgRrnTCma+JFIvdViPH0fNIDLU0IwXZMExK5Gw2u90g3z0O2kJqF1pyAduyKUqd2oSK/aBGgcKCMej5OnS6xfDYqZn+zawsfU58ohUJHWNsXvTtK8XMGKi/N7nBsPxBqgwrTBMwHKIzhWjhv6SquQnnGaNXbddaidImixNyIHsbpJiPAQZtT4RH3WfCasBOtYF5Xl1ZMs07MiGEe+grX3MjrenMe1MJyWEziZTKREaV8jOgVbJi0EjpGTYqDb/oC6paqL4MbpQxQiFD70n2gOjSAyyVWEPfIHKaVl4z+cQ== Administrator@LQN-PC |
复制key到authorized_keys 保存即可。
PS:如果服务端重装系统了 则需要清除本地公钥缓存 使用以下命令ssh-keygen -R 111.230.24.31
新建git仓库
cd /usr/local/wwh
mkdir GitLibrary
chmod -R 755 /data/GitLibrary
初始化
git init --bare hexo.git
vim /usr/local/wwh/GitLibrary/hexo.git/hooks/post-receive
添加以下代码
1 | #!/bin/bash |
保存并退出
- 给文件添加可执行权限
chmod +x /usr/local/wwh/GitLibrary/hexo.git/hooks/post-receive
至此 git仓库配置完成。
nginx配置
nginx安装目录在/etc/nginx,配置测试性配置来检查是否安装成功了。
- 在/usr/local/wwh下新建文件夹
mkdir hexo
cd hexo
新建index.html 文件vim index.html
文件内容如下:
1 | <!DOCTYPE html> |
3.配置 Nginx 服务器vim /etc/nginx/nginx.conf
添加以下配置
1 | server { |
4.启动Nginx 测试是否启动成功
输入命令: systemctl start nginx.service
在没有配置系统启动Nginx的时候只能使用这种方式
5.访问IP
在浏览器输入IP地址:http://111.230.24.31/
会显示Nginx running
表明Nginx启动成功。
部署Hexo
hexo 客户端安装 配置等不说明,在另外一篇文章中已经提及过了
1.修改nginx.conf 配置文件 vim /etc/nginx/nginx.conf
添加以下代码
1 | server { |
代码中location 可不添加,location的配置主要是用来做页面缓存,提高访问性能,避免页面加载太慢。
重新启动nginxsystemctl restart nginx.service
nginx 配置完成
2.hexo客户端配置
- 修改hexo中_config.yml
修改deploy 参数,修改为以下代码
1
2
3
4
5
6deploy:
type: git
repo:
github: git@github.com:wenthywang/wenthywang.github.io.git //部署到github
wwh: root@111.230.24.31:/usr/local/wwh/GitLibrary/hexo //部署到腾讯云服务器
branch: master
- 执行hexo部署命令
hexo clean
//清除本地资源hexo g -d
//生成静态文件 并部署到配置文件中git地址
至此,hexo博客部署完毕。
为Nginx添加系统启动配置
- 在/etc/init.d/目录下编写脚本,名为nginx
1 | #!/bin/sh |
开启nginx服务
chmod 755 /etc/init.d/nginx
chkconfig --add nginx
nginx启动,停止
service nginx start
//启动nginxservice nginx stop
//停止nginxservice nginx restart
//重启nginxservice nginx reload
//修改配置后立马生效
通过系统配置后,nginx可以使用service nginx *的方式来启动了。
定时清除nginx日志
1.修改nginx日志地址vim /etc/nginx/nginx.conf
修改以下内容error_log /etc/nginx/logs/error.log warn;
access_log /etc/nginx/logs/access.log main;
2.重新启动nginx
因为重新加载配置不生效,需要重新启动nginx。service nginx restart
3.添加定时任务(5天前的日志删除)cd /etc/nginx
mkdir sh
cd sh
vim delete_nginx_logs.sh
添加以下代码
1 | #set the path to nginx log files |
修改定时任务crontab -e
添加以下代码 保存00 00 * * * /bin/sh /etc/nginx/sh/delete_nginx_logs.sh
每天0点0分执行脚本