最近一段时间想要搭建个人的blog
,然后好好写博客。在网上大致看了下,一致的推荐hexo
来搭建个人blog
,而且可以通过github
挂载在公网上去,由于个人使用的Ubuntu 16.04
,通过命令行操作各种环境比较方便,因此就使用Ubuntu
+Hexo
+Github
开启了我的私博搭建,博客的地址在 我的博客。
相信很多人也各种google
百度了各种方案,然而搭建过程中还是各种坑,其实最后就几个命令配置好了就没问题,结果却一直崩在中间的心碎历程相信看到这里的你或多或少的经历过。所以如果安装了以上环境并且也没有配置好你的hexo
的话,先按下面的步骤操作吧。
cd /usr/bin
npm uninstall hexo -g
这里不要纠结你安装的是hexo
还是hexo-cli
,按照上面的命令操作都是可以成功移除掉你hexo
的环境的。
sudo apt remove node
sudo apt remove nodejs
sudo apt remove npm
这里不管有没有三个命令敲上去就是了,如果没有包的话顶多提示你没有,也不会有什么问题。
这里的nvm
实际上是node
的包版本控制工具,在这里你可以找到各种你想要的版本,这里我们想要成功搭建肯定后面要安装稳定版的node
了。
export NVM_DIR="$HOME/.nvm" && (
git clone https://github.com/creationix/nvm.git "$NVM_DIR"
cd "$NVM_DIR"
git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" origin`
) && . "$NVM_DIR/nvm.sh"
在你的~/.bashrc
,~/.profile
,或者~/.zshrc
中加入如下配置
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
如果执行完上面的命令都没有问题,这里就应该要使用nvm
来安装node
和npm
了,首先先检查远程仓库的版本
nvm ls-remote
如果网不好的情况下这一步骤可能会失败,如果失败再多试几次,或者找个网好的地方就能更下来了,我之前网络情况不太好大概执行了4/5次才刷出来。
如果上面那一步没问题的话,这里就开始安装node
的稳定版了。
nvm install stable
nvm use node
nvl alias default node
如果nvm
安装完成且成功配置好稳定版以后,就可以安装hexo
了,安装hexo
的过程其实和大家之前搜的没什么不同,之前安装失败的主要问题,要么是版本不匹配,要么是版本过低,在github
也搜索过作者回答大致是低一点的版本是会有bug
,不过高版本已经修复了。这边还是再重复一遍吧。
mkdir blog
hexo init blog
cd blog
npm install
npm update -g
这边执行没问题的话hexo
应该就是可以使用的了。在blog
目录下输入下面命令,如果命令行结果如下则安装成功了。此时你可以进入浏览器输入http://localhost:4000
查看你的blog
,也可以直接crtl
+鼠标点击命令行url
进入该页面。
hexo g # 生成静态界面
hexo s # 开启本地服务
安装并配置好了hexo
后,本地的blog
就可以使用了。但是我们写blog
不可能只是给自己看,所以我们要把我们的hexo
挂载在github
上,如果本地没有git
环境的话先安装git
sudo apt install git
现在假设我的邮箱是[email protected]
,github
的名字是zhangsan
git config –global user.email “[email protected]”
git config –global user.name “zhangsan”
先确定你之前有没有生成过ssh
的key
less ~/.ssh/id_rsa.pub
如果有的话会出现一串秘钥,则不需要重新生成秘钥,没有的话执行下面命令
ssh-keygen -t rsa -C example@163.com
会提示让你输入文件夹的名字来存放ssh
秘钥,并且让你确认一个验证的密码,按要求操作就好了。然后可以手动去你生成ssh
秘钥的文件查看你的公钥内容,也可以输入下面命令查看
less ~/.ssh/id_rsa.pub
如果你想要挂在自己的独立域名下请去google
查阅。如果用github
按照如下操作。创建一个新的仓库,仍然按上面的假设,你的用户名是zhangsan
,那么你生成的这个工程命名必须为[email protected]
。然后将你的ssh
秘钥添加 到你的github
中。
在你的hexo
的config.yml
文件中配置你的git
deploy:
type: git
repo: [email protected]:zhangsan/zhangsan.github.io.git
branch: master
最后将你的本地文件编译后上传到github
上
hexo g
hexo d
然后大概过几分钟,在浏览器输入zhangsan.github.io
就能看到你部署好的hexo blog
了。