说明:这里其实是分为两个部分,第一个部分是将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 | cd blog.git/hooks |
在 post-receive
文件中输入以下代码
1 | !/bin/bash |
授予 post-receive
文件可执行权限
1 | chmod +x /www/git/blog.git/hooks/post-receive |
创建www/wwwroot/hexo
目录,用于Nginx托管(**git用户下操作**
)
1 | sudo mkdir -p /www/wwwroot/hexo |
到这里,服务器上git就已经弄好了
Hexo配置
在hexo的_config.yml
中设置:
1 | deploy: |
最后三连就可以了hexo clean && hexo g -d
到这里,还只是将hexo的静态文件上传到服务器,下面我们进行下一步。
搭建网站
搭建网站比较简单
安装宝塔
注意:宝塔安装完后需要安装nginx
,首次进入宝塔会有安装提示,根据提示安装即可。
添加网站
在宝塔界面直接添加网站即可,填写自己的域名,根目录选择服务器存放hexo静态文件的文件目录即可,如下图
整个过程踩的几个坑
网站部署完后域名无法访问
可能性:
1、运行目录选择错误。
解决方法:查看运行目录下是否有本地推送上来的文件
2、域名是否解析
域名要正常解析到自己的服务器
3、网站是否有SSL证书
博主这里就是遇到了这个问题,网站没有配置SSL证书,域名始终打不来,配置好证书后可以正常访问
文件无法推送
全部配置好在执行三连的时候可能会遇到本地文件无法推送的问题,可能是因为服务器上存放这些文件的文件夹权限问题,修改好权限即可。