hexo部署到阿里云服务器

说明:这里其实是分为两个部分,第一个部分是将hexo生成的静态文件上传到服务器,第二个部分就是部署网站了(个人理解)
文件上传到服务器
创建git用户
1 | adduser git |
修改git用户密码
1 | sudo passwd git |
根据提示操作即可
设置权限
使用vim编辑/etc/sudoers
(vim的使用方法很简单,不会可以百度)1
vim /etc/sudoers
找到User privilege specification
部分,添加如下内容:1
git ALL=(ALL:ALL) ALL
如下图:
切换至git用户
1 | su git |
这里需要输入git
的用户密码
添加密钥
1 | mkdir -p ~/.ssh |
登录测试
在本地打开终端,以ssh
的方式登录云服务器1
ssh -v git@你的ip地址
创建git仓库
1 | mkdir /www/git/ |
在 blog.git/hooks
文件夹下创建一个 post-receive
钩子1
2cd blog.git/hooks
vim post-receive
在 post-receive
文件中输入以下代码1
2!/bin/bash
git --work-tree=/www/wwwroot/hexo --git-dir=/www/git/blog.git checkout -f
授予 post-receive
文件可执行权限1
chmod +x /www/git/blog.git/hooks/post-receive
创建www/wwwroot/hexo
目录,用于Nginx托管(**git用户下操作**
)1
2
3sudo mkdir -p /www/wwwroot/hexo
sudo chown -R $USER:$USER /www/wwwroot/hexo/ 设置目录所有权
sudo chmod -R 755 /www/wwwroot/hexo/
到这里,服务器上git就已经弄好了
Hexo配置
在hexo的_config.yml
中设置:1
2
3
4deploy:
type: 'git'
repo: git@服务器ip:/www/git/blog.git
branch: master
最后三连就可以了hexo clean && hexo g -d
到这里,还只是将hexo的静态文件上传到服务器,下面我们进行下一步。
搭建网站
搭建网站比较简单
安装宝塔
注意:宝塔安装完后需要安装nginx
,首次进入宝塔会有安装提示,根据提示安装即可。
添加网站
在宝塔界面直接添加网站即可,填写自己的域名,根目录选择服务器存放hexo静态文件的文件目录即可,如下图
整个过程踩的几个坑
网站部署完后域名无法访问
可能性:
1、运行目录选择错误。
解决方法:查看运行目录下是否有本地推送上来的文件
2、域名是否解析
域名要正常解析到自己的服务器
3、网站是否有SSL证书
博主这里就是遇到了这个问题,网站没有配置SSL证书,域名始终打不来,配置好证书后可以正常访问
文件无法推送
全部配置好在执行三连的时候可能会遇到本地文件无法推送的问题,可能是因为服务器上存放这些文件的文件夹权限问题,修改好权限即可。