本地环境: win7
服务器: 腾讯云
使用工具: Xshell, Xftp, git
使用Xshell工具(root用户)远程登录腾讯云
此时打开浏览器,输入公网IP+端口,进入nginx的欢迎页面
修改根目录root为/home/www/hexo;
修改域名server_name为你备案的域名 www.xxxx.com ,如果还没有就不改,有了再改;
找到 root ALL=(ALL) ALL,在下一行添加 git ALL=(ALL) ALL,然后保存
在.ssh目录下创建authorized_key这一步之后,打开本地存放公钥的文件id_rsa.pub(github生成ssh密钥问题不会的可以百度,教程很多这里不细讲),复制密钥到服务器上的authorized_keys文件中并保存,这样当你使用ssh远程连接服务器时就不用输入密码
接着在本地打开git bash用ssh方式远程连接服务器 ,登录成功界面如下图所示
打开hexo博客配置文件_config.yml 修改repo:git@你的服务器公网IP:/home/git/hexo.git
执行部署命令之前需要进入本地hexo博客安装目录中删除.deploy_git文件
打开Xftp工具进入/home/www/hexo,看到文件就表示通过git已经提交到服务器中去了
但此时需要重启nginx服务才能访问
走到这一步就算是大功告成,浏览器输入 http://xxx.xxx.xxx.xxx:80/ 进入hexo我的博客主页了
更新:买的域名备案成功了,欢迎大家访问 我的Hexo博客
最近在服务器上搭建了一个博客,用于存放主题资料。博客框架使用了Hexo,Web服务器使用了Nginx。
以前把Hexo搭建到Github上,这次本来想直接搭建到公司的Gitlab上,但是发现公司的Gitlab把Page功能禁用了,只能搭建到我们小组的服务器上。整体框架如下:
注:图片来自《 如何在服务器上搭建hexo博客 》
简单来说,就是首先服务器部署Nginx,本地使用Hexo生成博客,然后推送到服务器的Git仓库,再使用git hook功能,当博客被推送到Git仓库后自动部署到Nginx的指定目录里,完成文章发布。
本地与服务器都为Mac OS 系统
修改hexo目录下的 _config.yml 文件
其中 repo 地址比如为 admin@10.10.10.10::/var/repo/blog.git
开始写博客发布
其中我遇到的一些坑,主要是权限问题,如果遇到部署不成功,注意排查是否是权限问题导致的。
附录:参考文章
如何在服务器上搭建hexo博客
Github SSH
Hexo
Nginx
极客学院 Nginx入门指南
Nginx配置文件nginx.conf中文详解
前期准备
喜欢Hexo的主题,不少都适合中文,配置简单,一键发布,所以选择它。
关于如何搭建 Hexo 的环境,这里就不罗嗦了, Hexo官方文档已经讲解的非常详细
VPS 上安装 Nginx 服务
SSH 连接 VPS 后,添加 CenOS 7 的 epel 软件包: $ yum install epel-release
安装Nginx: $ yum install nginx
启动 Nginx: $ systemctl start nginx.service
使用 firewalld 给防火墙添加规则允许 HTTP 以及 HTTPS
设置 Nginx 自动跟随系统启动
$ systemctl enable nginx.service
现在可以在浏览器中输入 VPS 的 ip 检查看 Nginx! 是否启动了。
如果出现 "Welcome to Nginx.." 的字样,恭喜!代表你的 Nginx 成功安装并启动。
VPS 上搭建 Hexo
方案选择
毋庸置疑,为了安全起见并且在本地能同时 Deploy 到 VPS 和 Github (用作备份)上,选第二种方法肯定是比较好的
使用 rsync 将 Hexo 部署到 VPS 上
在 Hexo 目录下安装 rsync : $ npm install hexo-deployer-rsync --save
根据 Hexo rsync 部署文档 在 Hexo 中的 _config.yml 中添加 Deploy 的配置,以下是我在自己项目中的配置代码
V1.png
*必须先在 VPS 上创建好了想要存放 Hexo 静态文件的目录, rsync 不能创建不存在的目录
网上有的朋友说光在 Hexo 中使用 rsync 不够,在 VPS 也需要下载 rsync 服务,但是我在雷电VPS上就没有下载 rsync 服务。如果你在 Hexo 中用 rsync 部署的时候一直报错,那就在 VPS 上下载 rsync 服务,看能否解决一直出错的原因,命令如下:$ yum -y install rsync
配置 Nginx
Hexo 成功部署到 VPS 上之后,剩下的就是来配置 Nginx 了
$ vi /etc/nginx/conf.d/default.conf
将以下内容替换原内容
重启一下 Nginx 服务
$ systemctl start nginx.service
$ systemctl enable nginx.service
这样设置之后网站就应该可以通过 VPS 的 IP 地方访问到了
申请域名及域名解析
至此在 VPS 上搭建 Hexo 并绑定域名就到此结束了
附上原文链接:网页链接
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)