过段时间打算出去玩会,带不了电脑,阿里云服务器一直没用,刚好用来放 hexo,部署还是用 github pages,后续再考虑迁移服务器,现服务器只做发布用途,手机将写好的文章上传,更新
JDK 安装
- 检查是否有自带 jdk,有,卸载,执行: jdk rpm -qa grep java
- 安装:$ wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
- 解压:$ tar -zxvf jdk-8u131-linux-x64.tar.gz
- 移动:$ mv jdk1.8.0_131 jdk1.8 mv jdk1.8 /usr/java
- 配置环境变量: $ vim /etc/profile 尾部添加:
export JAVA_HOME=/usr/java/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar- 生效:$ source /etc/profile
- 检查:$ java -version ;$ javac -version
Git 安装
Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码
- 依赖安装: $ yum install curl-devel expat-devel gettext-devel
openssl-devel zlib-devel- $ yum install git-core # 这一步我没做表示已经安装了 git,百思不得其解
- $ git --version #检查
Node.js 安装
- 下载:$ wget https://nodejs.org/dist/v10.14.0/node-v10.14.0-linux-x64.tar.xz
- 解压:$ tar xf node-v10.14.0-linux-x64.tar.xz
- 移动:$ mv node-v10.14.0-linux-x64 node10.14
- 配置环境变量: vim /etc/profile 尾部添加:
# set for nodejs
export NODE_HOME=/usr/local/node10.14
export PATH=$NODE_HOME/bin:$PATH- 验证: $ node -v
配置 git 与 github 连接,添加公钥即可
pull github hexo 分支
预先将 blog 备份到 catlvsuger.github.io 的 hexo 分支,更换电脑时 pull 即可
- git clone -b hexo https://github.com/catlvsuger/catlvsuger.github.io
- npm install # 安装依赖
- 验证 hexo ,并不行,还是要安装 hexo,我还以为 clone 下来,免安装,并没有
- 安装 hexo: npm install -g hexo
安装 hexo 插件(未特别说明,均在博客主目录下安装):
- 部署插件: npm install hexo-deployer-git --save
- rss插件: npm install hexo-generator-feed --save
- 字数统计: npm install hexo-wordcount --save
- 本地搜索:npm install hexo-generator-searchdb --save
- 注脚:npm install hexo-footnotes --save (暂无使用)
- 静态资源压缩: npm install gulp -g(全局安装)
npm install gulp gulp-minify-css gulp-htmlmin gulp-htmlclean --save
添加 gulpfile.js(点击查看 ctrl f 搜索 gulpfile.js)- 置顶: 先移除 npm uninstall hexo-generator-index --save
再安装新的 npm install hexo-generator-index-pin-top --save- 使用emoji:npm install hexo-filter-github-emojis --save
- 音乐: npm install hexo-tag-aplayer --save
- 视频: npm install hexo-tag-dplayer --save
- 加速: npm install hexo-service-worker hexo-filter-optimize --save
- 站点地图: npm install hexo-generator-sitemap
npm install hexo-generator-sitemap --save-dev
运行
hexo clean # 清除以前的文件
hexo g #编译
gulp # 压缩
hexo d # 部署到 github gages
hexo s # 本地启动
hexo g 时报错 Template render error
查看 https://hexo.io/docs/troubleshooting.html, 没有找到答案,查看 theme next 文件夹,才发现是个空文件夹,重新 pull,发现 github next 就是空的;原因是上传 hexo 备份时 github 仓库冲突
处理:
git rm -r --cached . # 清除本地仓库 git 缓存
git add . #重新添加
git commit -m 'add myblog'
git push
重新 pull
运行 hexo clean && hexo g && gulp && hexo s #本地运行(http://47.107.98.139:4000/ 访问未成功,原因:阿里云设置了端口访问,所以在安全组里添加 外网访问即可)
git push 报错
测试 push ,报错:Updates were rejected because the tip of your current branch is behind,原因我在远程修改了,同时在 linux 中修改了,目前我要保证 linux 功能是好的,所以直接强制 push
$ git push -u origin master -f
参考 git常见问题
运行 hexo clean && hexo g && gulp && hexo d
一切 ok,mydiscat.cn 切换到linux
其他
配置定时 deploy、push 功能
设置 ftp ,手机通过 ftp 上传到 (遇到个问题,文件能下载不能上传,开始以为阿里云出入网安全设置问题,设置了安全组还是没有解决,提交工单,很快就有反馈,经提示才想起用户没设置读写权限,这破记性 )
接下来就是 学习 、玩 ,写好记录 上传到服务器,定时发布,七牛云需要域名备案才能用,之前没通过,图片暂时用简书上传的图片地址 ,啦啦啦啦啦啦啦 哦了~~~~~