目录
  1. 1. 环境的配置
    1. 1.1. 安装git node.js
    2. 1.2. 用node安装hexo
    3. 1.3. 本地博客生成
    4. 1.4. 上传代码到Github托管
    5. 1.5. 更换主题
  2. 2. 主题配置
  3. 3. 主题维护
  4. 4. 软件版本更新维护
    1. 4.1. 建站主要参考的链接:
hexo blog部署

  作为一个纯小白搭建这个博客,着实踩了一路的坑,作为本站得第一篇博文,当然是对之前的建站之路做一个小小的笔记,方便后续食用。本文记录并附上本站的相关配置文件,以充当配置文件备份之用。本站是基于Archlinux环境下利用github的平台搭建的hexo博客,所使用的模板是hexo中使用人数最多的next主题。

  选择linux一来我把他安装在了移动硬盘上面,能够随身携带,随时更新,二来,linux下环境配置相对简单,arch的pacman 跟aur软件管理器美滋滋啊有木有。已经有好多大神写了不少在win下搭建的流程,大体除了需要单独下载软件包安装之外,貌似基本上完全一样,本篇内容,好像完全没有意义。 不过,鉴于在已经有这么对很完善的贴子之下,我依旧没能一次成功,我还是决定要把我搭建本站的过程记录下来,顺便趁机熟悉一下hexo写博客的语法。好了,话不多说,以下内容均亲测。后面的命令已进行精简。

环境的配置

安装git node.js

1
sudo pacman -S git nodejs

win下自行到官网下载安装包安装。

用node安装hexo

  在此注意,hexo安装时,在根目录之下操作。部分帖子写的安装hexo-cli,我试的时候失败了,失败原因,没有自动建立全局命令,原因不详,而且,安装hexo时,会发现连带安装的也有hexo-cli。 恩 小白这方面不懂不懂,反正安装hexo就是了。

1
$npm install hexo -g  

本地博客生成

  找任意一个自己觉得方便的地方,新建一个目录,英文名字命名吧,中文没试过。如:我建立的文件夹路径为:/home/earth/Download/sxxkearth ,cd进入该文件夹之下,生成本地博客文件。

1
$ cd /home/earth/Download/sxxkearth
1
$hexo init

上传代码到Github托管

  如果要上传代码到github,需要先生成git的ssh密钥,加入到github 设置栏下的ssh密钥管理栏下。 设置过程自行百度非常详尽。在此只提一个,就是切记在执行上传之前要将一下代码加入到博客根目录下的_config.yml文件之下。内容在最后一行。否则会报错无法上传。

1
2
3
4
deploy:
type: git
repository: git@github.com:账户名/账户名.github.io.git
branch: master

上传代码

1
$hexo d

  执行这个命令时,经常会出现没有文件需要更新,没有上传的问题,这种问题一般执行一下下面这个命令再上传就好了

1
$hexo clean

更换主题

  在执行完hexo init之后会发现博客根目录下已经生成了一些文件夹,此时执行hexo s可以打开本地服务器,就能够在浏览器中访问http://localhost:4000/ 这个地址了。此时的主题为默认的主题。最后进行主题的更换。先ctrl+c关闭本地地址,前往下载Next6.0+主题主题。细节部分可参阅NEXT使用文档。将主题下载下来,解压到/sxxkearth/theme文件夹下,更改文件夹名称为Next更改博客根目录下的配置文件,将自带主题修改为next主题。

文件位置:~/sxxkearth/_config.yml
1
2
3
4
5
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
-theme: lexxxx
+theme: next

至此next主题已经可以正常的运行在本地之中了。

主题配置

  初设置的主题完全都是默认的样子。我们可以更据自己的需求对其进行相应的修改。next主题可以说是非常完善的主题,大部分的功能都已经集成了,我们只需要在主题配置文件中打开相应的开关即可。一下内容,大部分为主题中暂时并未附加的功能的添加。
  大部分的功能不仅需要源代码,还需要必要的插件的支持,安装插件时,用npm安装可能会报错,是因为源的问题。下面将npm使用的源换成淘宝源。

1
$npm install -g cnpm --registry=https://registry.npm.taobao.org

主题维护

  在此特别提醒,在设置完比较多东西的时候,备份scaffolds,source,themes,_config.yml,package.json五个文件及文件夹。方便有问题的时候能够快速恢复。

1
2
3
4
5
scaffolds
source
themes
_config.yml
package,json

  要恢复备份时,将以上文件放入一文件夹中。package.json文件中记录了所有已安装的插件。 使用cnpm install命令可下载所有插件。当然package.json文件中只会留下安装时附以--save安装的插件。当然,为了方便,基本上所有的插件都使用cnpm install xxxxx --save安装便好。此位置,安装成功的表达为输出内容前排含勾。 若有Err之类的为有报错。可能是错误的执行了npm命令。

1
cnpm instal

  在此,提一个貌似之前没逛到的东西。估计这个对大神来说可能根本就是皮毛所以并没有提。 谁让咱是小白呢。我就着这提一下好啦。

  之前因为插件及渲染器的安装错误,甚至因为安装了插件,导致hexo s 命令丢失,很奇怪,也很难受。我花了大量的时间来解决hexo单方面的问题,然后又接着研究者怎么成功安装插件,最后要放弃重来的时候发现,只要把博客根目录下的所有东西删除,再重新执行hexo init,所有的东西,就基本已经重来啦,前提是,一定要做好上面所述文件的备份,这样我们把就不需要再对模板进行从新更改,博文内容也不会因此而丢失。 由上可得,之前一只要求安装时候所在的路径,是因为hexo,git,node.js等需要的是全局命令,所以在系统根目录下安装,比较稳妥,而hexo插件的安装,是以文件的形式,存在于博客根目录下的node_modules之下,安装的所有插件,都能狗在里面找到。

  本来多附一点图片,实在,代码书写尚不习惯,排版也不太好,忘各位看官海涵。
纯小白书写,观点可能有误,如各位大佬发现问题,欢迎联系指正。

软件版本更新维护

  博客需使用较新的node.js版本,否则容易出现报错,建议选择新版本的软件进行安装。使用新版本后,出现以下情况为软件版本过高,可在下述文件中补充相应代码解决。

报错内容
1
2
3
4
5
(node:15448) Warning: Accessing non-existent property 'column' of module exports inside circular dependency
(node:15448) Warning: Accessing non-existent property 'filename' of module exports inside circular dependency
(node:15448) Warning: Accessing non-existent property 'lineno' of module exports inside circular dependency
(node:15448) Warning: Accessing non-existent property 'column' of module exports inside circular dependency
(node:15448) Warning: Accessing non-existent property 'filename' of module exports inside circular dependency
文件位置:~blog\sxxk\node_modules\stylus\index.js 以下内容补充在此文件开头位置即可
1
2
3
exports.lineno = null;
exports.column = null;
exports.filename = null;

  若提示缺少其他依赖或其他依赖需要更新,均可使用npm install xxxcnpm install xxx 进行下载,使用npm upgrade xxxcnpm upgrade xxx进行更新。 其他问题另详。

建站主要参考的链接:

https://www.haomwei.com/technology/maupassant-hexo.html
https://www.cnblogs.com/liuxianan/p/build-blog-website-by-hexo-github.html#%E4%B8%8A%E4%BC%A0%E5%88%B0github
https://lemonreds.github.io/2018/02/08/hexo-theme-nayo/
https://hfanss.com/

本文主要参考链接:
https://hfanss.com/2018/Maupassant%E4%B8%BB%E9%A2%98%E3%80%81%E5%B1%A0%E5%9F%8E%E4%B8%BB%E9%A2%98%E4%BC%98%E5%8C%96%E7%89%88.html
https://www.haomwei.com/technology/maupassant-hexo.html
https://www.cnblogs.com/liuxianan/p/build-blog-website-by-hexo-github.html#%E4%B8%8A%E4%BC%A0%E5%88%B0github
https://npm.taobao.org/

文章作者: 嗜血星空earth
文章链接: http://sxxkearth.github.io/2018/10/09/hexo%20blog%E9%83%A8%E7%BD%B2/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请附以署名及出处!

评论