这篇文章我来说一下Hexo博客搭建时可能出现的错误,给出一个“比较”合理的解决方案。

1.hexo init

  在起初初始化博客的时候,需要执行命令hexo init,最后gitInstalling dependency...就是安装依赖项,这里最好多等一会儿。然后再用cnpm install安装hexo需要的库。
  初始化博客需要一个空文件夹,不然执行这个命令时会出错!

2.插件安装

  安装插件一定要注意看插件的文档,一般都会讲如何配置,切勿遗漏!
  另外还要注意甄别名称相近的插件比如hexo-encrypthexo-blog-encrypt。我就搞混了当时,都是博客加密的插件,我现在用的后者【建议】。如果你想用后者插件,注意在使用cnpm install命令时一定要注意把插件名字输入正确
  我这个网站使用的插件在下面,可以复制到自己博客根目录下执行以下脚本。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
cnpm i hexo-abbrlink --save
cnpm i hexo-blog-encrypt --save
cnpm i hexo-deployer-git --save
cnpm i hexo-generator-archive --save
cnpm i hexo-generator-category --save
cnpm i hexo-generator-feed --save
cnpm i hexo-generator-index --save
cnpm i hexo-generator-search --save
cnpm i hexo-generator-tag --save
cnpm i hexo-pdf --save
cnpm i hexo-renderer-ejs --save
cnpm i hexo-renderer-pug --save
cnpm i hexo-renderer-stylus --save
cnpm i hexo-wordcount --save
cnpm i hexo-renderer-kramed --save # mathjax公式渲染

3.部署错误

  要确定站点配置文件_config.ymldeploy:标签配置正确。尤其是repobranch
  branch指分支,一定要去你****.github.io仓库看看有几个分支,哪一个分支是默认的,就在配置文件的branch写上那个分支的名字。

1
2
3
4
deploy:
type: git
repo: git@github.com:ads38/ads38.github.io.git
branch: master

  经多次确认配置没有任何问题,执行命令ssh -T git@github.com有可能出现以下错误:

ssh: connect to host github.com port 22: Connection refused

  这意味着远程部署失败。在你的密钥添加并配置无误的情况下,尝试执行命令ssh -vT git@github.com,然后输出类似以下的语句【-vT表示冗余输出,可以看到更详细的信息】:

OpenSSH_9.0p1, OpenSSL 1.1.1o 3 May 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to http://github.com [::1] port 22.
debug1: connect to address ::1 port 22: Connection refused
debug1: Connecting to http://github.com [127.0.0.1] port 22.
debug1: connect to address 127.0.0.1 port 22: Connection refused
ssh: connect to host http://github.com port 22: Connection refused

  显然,系统把github.com解析成了本地地址,所以需要修改hosts文件。
  Win10的hosts文件路径为:C:\Windows\System32\drivers\etc。注意hosts文件没有扩展名
  在其中添加一段映射:

1
140.82.113.4 github.com

  随后,以管理员身份运行cmd,执行命令ipconfig /flushdns即可。

4.node.js版本

  注意node.js的安装版本,有的主题要求高版本的node.js。
  但是Win7只能装最高13.14.0的版本,更新的版本无法安装了,有的hexo库也要求高版本的node.js。所以这里也要注意!现在Win7都停止更新了,有条件的尽量换个Win10吧……