前言
之前用的是博客园,但是那个账号密码老记不住,干脆自己搭建一个吧,好歹也是一个码农。
然后花了两个晚上加一个上午,通过hexo
和github
搭建了一个个人博客。
网上教程、文档那么多,为什么花这么久时间?当然是踩坑了啊。
所以下面会记录一些遇到的问题和坑。
如果你看完这边文章,那你只需要两个小时
就能搭建成功。欢迎有兴趣的小伙伴尝试一下。
正文
环境准备
- node.js
- git
这两个应用windows用户直接搜索下载安装就可以。
如果习惯了使用linux命令的朋友,推荐windows神器cmder
。
可以直接在windows环境下使用linux命令,样式可调,再也不要用黑乎乎的cmd了,而且自带git,完全可以不用下载windows
git。
正式安装hexo
在node.js安装好的前提下,全局安装hexo
如何判断node.js是否安装成功?执行以下命令,如果能够看到版本号则说明安装成功了
1
node -v
安装hexo
1
npm install -g hexo-cli
自选合适的目录,新建文件夹<folder> 1
2
3cd <folder>
hexo init
npm install
不再赘述,直接看官方文档。
配置github
新建仓库,仓库名必须为[your_name.github.io]
补充:本地配置github ssh连接,方便自动部署,以及clone你喜欢的主题(theme)
windows用户直接在c:/用户/youername/.ssh/
下查看是否有id_rsa.pub
文件。
没有的话命令行执行命令ssh-keygen -t rsa -C "your eamil"
,会自动生成id_rsa.pub
文件,打开后复制。
github->头像->Settings→SSH kyes→Add SSH key,粘贴复制的内容。
配置本地账户 1
2git config --global user.name “your_username” #设置用户名
git config --global user.email “your_email” #设置邮箱地址,最好使用注册邮箱地址
测试是否配置成功 1
ssh -T git@github.com
hexo配置以及使用
有两个配置文件: -
一个是根目录下的_config.yml
称为站点配置
文件 -
一个是themes/landscape/_config.yml
称为主题配置
文件(默认主题:landscape)
站点配置如下:
1 | url: https://yourname.github.io/ |
hexo常用命令
hexo n "我的博客"
== hexo new "我的博客"
#新建文章
hexo p
== hexo publish
hexo g
== hexo generate
#生成
hexo s
== hexo server
#启动服务本地预览
hexo d
== hexo deploy
#部署
hexo clean
#清除缓存 网页正常情况下可以忽略此条命令
hexo server
#Hexo
会监视文件变动并自动更新,您无须重启服务器。
hexo server -s
#静态模式
hexo server -p 5000
#更改端口
hexo server -i 192.168.1.1
#自定义 IP
在执行之前,记得安装自动部署 (--save
加不加的区别在于是否写入到依赖文件package.json中) 1
npm install hexo-deployer-git --save
正常本地预览,直接执行hexo s
,如果要发布话最好执行clean
命令,会去删除生成的public文件,完整部署命令:hexo clean && hexo g && hexo d
。或者直接hexo d -g
注意问题
安装完自动部署后,是不需要本地git
init新建仓库的。执行hexo g
会在根目录生成public文件夹,自动部署,
本质是将public文件夹内容全部提交到仓库中去,默认会访问编译好的index.html。
如果部署完,访问your_name.github.io 404,可能有下面几个原因 1.
首先检查仓库文件,是不是全都是public的文件内容,如果整个本地blog文件夹都提交了,首先清空
仓库,然后删除本地.deploy_git
文件夹,再重新部署 2.
文件有报错,本地hexo s
观察是否有报错。
不喜欢原主题的朋友,可以github去找喜欢的主题。执行命令 1
git clone XXXX.next.git themes\next
主题的配置,可以看文档,修改对应的主题配置
文件。
我使用的主题是indigo
,详细文档indigo
markdown
不会使用的朋友,参考链接markdown中文文档
如果没有ide的话,可以使用在线预览Cmd Markdown