Hexo

Hexo: 快速、简洁且高效的博客框架
如何无成本搭建个人网站?
Linux上的操作步骤介绍


在Github上创建一个项目(命名固定格式)

仓库格式为: 用户名.github.io
此为固定写法,不要乱写

安装Git并设置

sudo pacman -S git

设置user.nameuser.email配置信息

git config --global user.name "你的GitHub用户名"
git config --global user.email "你的GitHub注册邮箱"

生成ssh密钥文件

ssh-keygen -t rsa -C "你的GitHub注册邮箱"

找到生成的~/.ssh的文件夹中的id_rsa.pub密钥,将内容全部复制
进入Github setting keys, 并点击New SSH Key
标题任意,把复制的内容粘入keys内,最后点添加

检查是否设置正确

ssh git@github.com

若成功则会提示
Hi 你的用户名! You’ve successfully authenticated,

如果提示22端口连接不上,可以在~.ssh/config里加入以下内容换成443端口

Host github.com
    HostName ssh.github.com
    User git
    Port 443

安装Nodejs

sudo pacman -S nodejs npm

安装Hexo

首先我们要新建一个文件夹,命名自好
比如我们先在home目录新建Hexo

mkdir ~/Hexo

然后cd进去该文件夹

cd Hexo

使用npm命令安装Hexo

sudo npm install -g hexo-cli

安装完成后,初始化我们的博客

hexo init blog

检测我们的网站雏形

通过以下命令创建且在本地建立server

hexo new test   #新建文章 test
hexo g          #更迭文件
hexo s          #本地server

进入localhost:4000查看博客

常用Hexo命令

npm install hexo -g  #安装Hexo
npm update hexo -g   #升级
hexo init            #初始化博客

hexo n "文章名"       #新建文章
hexo clean           #清除缓存
hexo g               #更迭文件
hexo s               #本地server预览
hexo d               #部署

推送网站

首先我们要明确我们要改的 config 是什么

Hexo文件下的_config.yml站点的配置
而themes下的某主题的_config.yml只是对主题的修改

关联Hexo与GitHub,打开 站点config ,翻到最后

deploy:
type: git
repo: 这里填入你之前在GitHub上创建仓库的完整路径,记得加上 .git
branch: master

repo格式为

git@github.com:/用户名/用户名(小写).github.io.git

安装Git部署插件

npm install hexo-deployer-git --save

网站部署完成

通过hexo d部署网站,用户名.github.io应可正常访问

hexo clean
hexo g
hexo d

绑定域名(如果你有,且你需要)

到你的域名服务商处解析域名到github

  • 记录类型CNAME,主机记录www,记录值用户名.github.io
  • 记录类型CNAME,主机记录@,记录值www.你的域名

到github绑定你的域名

登录GitHub,进入之前创建的仓库,点击settings,设置Custom domain,输入你的域名
www.你的域名

在source下创建CNAME文件

打开CNAME文件后只输入你的域名即可
如果带有www,那么以后访问的时候必须带有www完整的域名才可以访问,但如果不带有www,以后访问的时候带不带www都可以访问。

再次部署就可以通过域名访问你的网站了

更换主题

Hexo主题库

主题的调用方式有两种
一定不要忘记看主题的github页的介绍和用法!!!

  • 一是手动下载后放在themes里,直接改主题的_config.yml,clone你要的主题放在themes/下,打开站点config.yml修改主题为对应该的主题
  • 二是通过npm直接下载(主题作者一般会讲是哪个包),它会下载在node_modules内,找到它(一般hexo-theme开头)并把里面的_config.主题名.yml(具体在哪要看主题的介绍)的文件复制到Hexo的目录下与_config.yml同目录

其他以及注意事项

  • 写文章时用的是Markdown语法,本文不讲,请自行学习
  • github上尽可能不要上传图片,请自行调用自己常用的图床