Hexo博客创建与迁移

创建篇

1、git环境配置

1.1、git下载链接:git-scm.com/downloads

由于博客基于Github pages/gitee搭建,因此需要git环境推送博客文章。

打开git bash,运行如下命令配置GitHub。

1
2
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

1.2、链接到远程环境

在git bash运行如下命令生成密钥。

1
$ ssh-keygen -t rsa -C "your_email@example.com"

回车三次,即生成密钥,分别是秘钥和公钥,这里我们需要用到公钥,它被保存在了C/Users/xxx/.ssh/id_rsa.pub (windows)或者~/.ssh/id_rsa.pub(linux)中,找到并打开id_rsa.pub文件。

登录github,在网页的右上角,点击三角形,进入Setting页面,随后进入SSH and GPG keys一栏,点击New SSH key。在Title框内给这个key取个名字,然后把id_rsa.pub的内容复制进去并保存。

1.3、测试连接

在linux的终端或者windows的git bash中输入ssh -T git@github.com,在看到提示后输入yes,如果在之后弹出的内容中提示的用户名是你的,说明SSH key已经匹配成功了,接下来就可以使用github了

2、创建个人网站仓库

登录github,点击New repository创建新仓库,命名为用户名.github.io,注意这里一定要用你github账号的用户名

3、获取个人网站域名(可选)

这一步不是必须,即使你没有注册自己的域名,也可以在配置完成后,通过访问xxx.github.io来查看自己的blog。但是域名是一个网站的入口,好记且有个人标识的域名,你值得拥有。比较简便的注册域名的途径是阿里云腾讯云

4、Hexo安装与部署

4.1、Node.js安装

我们选用的是Hexo,一款基于Node.js的静态博客框架,因此需要安装Node.js

  • Windows: 从这里下载安装包并安装。该安装包除了Node.js还会一并安装npm,安装完成后,可以通过在命令行(注意不是git bash)输入node -vnpm -v检查Node.jsnpm是否安装成功,如果显示版本数字,则表示已经安装成功。

    添加国内镜像源:如果没有梯子的话,可以使用阿里的国内镜像进行加速。

    1
    npm config set registry https://registry.npm.taobao.org
  • Linux:

    安装npm

    1
    $ sudo apt install npm

    升级npm为最新版:

    1
    $ sudo npm install npm@latest -g

    安装用于安装Node.js的模块n

    1
    $ sudo npm install -g n

    然后通过n模块安装稳定版本的Node.js

    1
    $ sudo n stable

    用与Windows同样的方法,检查Node.jsnpm是否安装成功

4.2 、安装Hexo

在windows的命令行窗口(或git cmd)或linux的终端中输入:

1
$ npm install -g hexo-cli

4.3、初始化博客

在Hexo安装完成后,用cd前往你想要放blog文件的文件夹,初始化blog,输入:

1
$ hexo init 

随后生成静态文件:

1
$ hexo g

启动本地服务器预览:

1
$ hexo s

之后在浏览器中访问localhost:4000

4.4、部署到github pages

在初始化blog的文件夹中,找到站点配置文件_config.yml,把这个文件打开,翻到最后修改:

1
2
3
~/blog/_config.yml type: git
repo: git@github.com:用户名/用户名.github.io.git
branch: master

最后安装git部署插件,运行:

1
$ npm install hexo-deployer-git --save

此时在命令行中依次输入三个命令:

1
2
3
$ hexo clean 
$ hexo g
$ hexo d

随后用浏览器访问xxx.github.io,如果看到与本地服务器同行的页面,就说明你的blog现在可以在网络中被访问了

5、域名绑定

腾讯云/阿里云 添加相应的解析记录。

第一条解析记录类型为A,主机记录填@,记录值为你的github个人主页(xxx.github.io)的ip地址(xxx.xxx.xxx.xxx)。要获取该地址,你可以在命令行或终端中输入ping xxx.github.io来查看

第二条解析记录类型为CNAME,主机记录为www,记录值为你的github个人主页网址。

第二步,登录github,进入你创建的xxx.github.io仓库,点击仓库的setting,在Options一栏中往下翻,找到Github Page,在Custom domain中填入自己注册好的域名,然后点击save保存

迁移篇

1、配置基础环境

要配置基础环境,需要做以下几个步骤

  1. 安装git,并生成密钥,保存到github账号中
  2. 下载并安装Node.jsnpm会自己跟着装好)
  3. 使用npm安装hexo ,具体指令为npm install -g hexo-cli

具体如上创建篇。

❗️ 注意,安装完hexo之后不用hexo init

2、迁移相关文件

需要迁移的文件只有:

  1. 博客配置文件./_config.yml
  2. 主题配置文件夹./theme/
  3. 文章及相关内容的文件夹./source/
  4. 模板文件夹./scaffolds/
  5. 记录博客所有的插件的文件./package.json

3、在新电脑中重新部署

还记得上一步中拷贝的./package.json嘛,只要在同一文件目录下运行

1
$ npm install

就会自动读取package.json文件中记录的插件列表,然后挨个安装,这样你在旧设备中安装的插件,在新设备中,都安装好了

之后的一切就照常,修改文章,生成静态文件,部署到git

1
2
$ hexo g
$ hexo d

图床配置

1、下载PicGo图床工具:下载

2、打开PicGo,插件设置搜索Gitee,安装并配置如下。

参考文献

1、建站历程:安装及部署篇

2、Linux下Git和GitHub使用方法总结

3、在ubuntu上安装最新稳定版本的node及npm

4、GitHub+Hexo 搭建个人网站详细教程

5、在github上搭建hexo个人博客(Linux-Ubuntu)