Git+Nginx搭建远程Web服务器
Git+Nginx搭建远程Web服务器
一、服务器端配置
1. 创建git文件夹用于存放网站文件
1 | $ cd |
2. 在服务器选择一个放置网站的目录,假设这个目录为/var/www/myblog
1 | $ mkdir -p /var/www/myblog |
3. 自动部署
git 有个功能叫做hook,也就是说在我们提交代码的时候会触发一些操作,这就是hook Git的挂钩(Hook)主要包含:
applypatch-msg post-update pre-rebase commit-msg pre-applypatch update post-commit pre-commit post-receive prepare-commit-msg
我们要用到的是post-update这个hook 进入到我们的git服务器的文件夹~/.myblog/hooks 进入到hook文件夹 使用ls命令可以看到许多hook脚本的sample
1 | $ cd ~/.myblog/hooks |
新建一个post-update脚本 输入以下命令
1 |
|
给新建的post-update赋予权限
1 | $ chmod +x post-update |
4…配置nginx
编辑nginx的配置文件/etc/nginx/sites-available
1 | $ sudo vim /etc/nginx/sites-available/default |
这里主要修改server_name为你的域名 修改root目录为hexo静态文件的目录,以上面目录举例/var/www/myblog要注意nginx需要有该目录的文件读取权限
1 | $ sudo chown -R pi:pi /var/www |
重启nginx:
1 | $ sudo nginx -s reload |
服务端配置完成!!!
二、客户端配置
1. 通过ssh秘钥和树莓派建立连接
2. 配置public推送
由于树莓派性能不强劲,所以采用在本机用hexo生成public文件夹。用git提交生成好的public文件夹到树莓派。具体提交方法采用hexo的hexo-deployer-git插件。
1 | $ cd myblog |
将deploy配置下的repo参数改为刚刚在树莓派上新建的.myblog路径。
每次维护完项目后输入: hexo d 即可完成推送。
大功告成!!!
最后附上成果图:
-------------本文结束感谢您的阅读-------------