Hexo个人博客配置
使用hexo+github搭建个人免费博客
安装之前,先注册一个github账号
安装Git
- Windows:下载并安装 git.
- Mac:使用 Homebrew, MacPorts 或者下载 安装程序。
- Linux (Ubuntu, Debian):
sudo apt-get install git-core
- Linux (Fedora, Red Hat, CentOS):
sudo yum install git-core
安装Node.js
https://nodejs.org/en/download/
创建仓库
创建名为username.github.io
的仓库
配置SSH
为什么要配置这个呢?因为你提交代码肯定要拥有你的github权限才可以,但是直接使用用户名和密码太不安全了,所以我们使用ssh key来解决本地和服务器的连接问题。
用git bash执行如下命令:
1
cd ~/. ssh #检查本机已存在的ssh密钥
```markup
ssh-keygen -t rsa -C “邮件地址”1
2
3
4
5
6
7
8
9
10
然后连续3次回车,最终会生成一个文件在用户目录下,打开用户目录,找到`.ssh\id_rsa.pub`文件,记事本打开并复制里面的内容,打开你的github主页,进入个人设置 -> SSH and GPG keys -> New SSH key:
将刚复制的内容粘贴到key那里,title随便填,保存。
测试是否成功:
```markup
ssh -T git@github.com # 注意邮箱地址不用改
如果提示Are you sure you want to continue connecting (yes/no)?
,输入yes,然后会看到:
1 | You’ve successfully authenticated, but GitHub does not provide shell access. |
看到这个信息说明SSH已配置成功!
此时你还需要配置:
1 | $ git config --global user.name "liuxianan"// 你的github用户名,非昵称 |
安装hexo
为避免不必要的问题,建议全部使用git bash来执行;
安装
1 | $ npm install -g hexo |
初始化
在电脑的某个地方新建一个名为hexo的文件夹(名字可以随便取),比如我的是D:\hexo\hexo
,由于这个文件夹将来就作为你存放代码的地方,所以最好不要随便放。
进入该文件夹,右键选择git bash,弹出命令行
1 | $ hexo init |
hexo会自动下载一些文件到这个目录,包括node_modules,
1 | $ hexo g # 生成 |
执行以上命令之后,hexo就会在public文件夹生成相关html文件,这些文件将来都是要提交到github去的:
hexo s
是开启本地预览服务,打开浏览器访问 http://localhost:4000 即可看到内容
第一次初始化的时候hexo已经帮我们写了一篇名为 Hello World 的文章,默认的主题比较丑。
修改主题
本人比较喜欢的主题:hexo-theme-next
1 | git clone https://github.com/theme-next/hexo-theme-next themes/next |
有时因为网络无法访问,可以到github仓库上下载next主题源码,然后复制到hexo/theme文件夹。
修改hexo根目录下_config.yml
中的theme: landscape
改为theme: next
,然后重新执行hexo g
来重新生成。
如果出现一些莫名其妙的问题,可以先执行hexo clean
来清理一下public的内容,然后再来重新生成和发布。
如果你一切都配置好了,发布上传很容易,一句hexo d
就搞定,当然关键还是你要把所有东西配置好。
首先,ssh key
肯定要配置好。
其次,配置_config.yml
中有关deploy的部分:
正确写法:
1 | deploy: |
主题配置
这个需要查阅你选择/使用的博客主题,找到他的相关配置文件,即对应主题目录下的_config.yml
,进行修改。
写博客
以markdown文件形式写好博客,将该文件复制到hexo根目录下/source/_posts中。
1 | --- |
新建about、categories页
在hexo根目录下/source/中新建名为about的文件夹和名为categories的文件夹,将想要显示在about、categories的内容(.md)文件放进去就可以了。
让博客列表不显示全部内容
默认情况下,生成的博文目录会显示全部的文章内容,如何设置文章摘要的长度呢?
答案是在合适的位置加上<!--more-->
即可。
上传博客
修改完博客内容和主题等配置后,上传步骤如下:
- hexo clean
- hexo g
- hexo s #这一步可以没有,这一步可以用来在线本地预览
- hexo d
关联到自己新注册的域名
平常用默认的 xxx.github.io
来访问,如果你想更个性一点,想拥有一个属于自己的域名,那也是可以的。步骤:
去阿里云申请域名
实名制
域名解析
域名配置最常见有2种方式,CNAME和A记录,CNAME填写域名,A记录填写IP,由于不带www方式只能采用A记录,所以必须先ping一下
你的用户名.github.io
的IP,然后到你的域名DNS设置页,将A记录指向你ping出来的IP,将CNAME指向你的用户名.github.io
,这样可以保证无论是否添加www都可以访问,如下:
在hexo的source目录下新建CNAME的文件(没有后缀),内容写里面填写你的域名。
在你绑定了新域名之后,原来的
你的用户名.github.io
并没有失效,而是会自动跳转到你的新域名。