前面几篇文章说过将hexo部署到githubcoding,但是使用过程中发现github国内访问速度慢,不允许百度爬虫爬取,codingpage服务也是部署在国外,虽然做了cdn速度还不错,但有时会挂掉,时间有短有长,不稳定这一因素也驱使这我放弃这个方式.最终打算部署到自己的服务器上,阿里云还是很稳定的,自己不乱操作也不回出什么问题

首先我删除了coding上的仓库,但是保留了github的仓库,为了让服务器可以通过github pull获取最新的更改,这样也可以更好的进行版本控制,以及跨平台,跨设备的支持,后面使用了gitalk做为评论系统,会用到token,又不需要再使用travisCI的服务,为了安全,就把仓库设置为私人仓库.

修改配置文件,将域名改为服务器绑定的域名,或者使用nginx开启方向代理,将 4000 端口映射到 外部80,也可以直接hexo s -p 80直接指定. 去除根下的 .travis.yml配置文件,并将/.config.yml中的 deploy 设置为空,不需要部署到远程仓库了

为了使用起来更加方便以达到自动化的效果,可以使用linux的计划任务,或者使用宝塔面板的可视化操作,新建shell脚本,设置运行时间,如: cd /root/git/resp_name/ && git pull,cd /root/git/resp_name/ && npm run deploy

npm run deploy命令的由来 : 在package.json 中定义

1
2
3
	"scripts": {
	    "deploy": "hexo clean && hexo generate && hexo s"
	  },

也可以根据自己的情况自定义脚本

到这里就差不多完成了将hexo转到阿里云的操作了