本文主要介绍博客相关问题

1. 安装nodejs

参考官方文档:Node.js — Download Node.js®,通过nvm管理node的不同版本。

# Download and install nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

# in lieu of restarting the shell
\. "$HOME/.nvm/nvm.sh"

# Download and install Node.js:
nvm install 22

# Verify the Node.js version:
node -v # Should print "v22.17.0".
nvm current # Should print "v22.17.0".

# Verify npm version:
npm -v # Should print "10.9.2".

2. nvm的使用

# 查看node版本
nvm list
       v10.24.1
->     v12.14.0
       v16.20.2

# 安装node版本
nvm install <版本>

# 卸载node
nvm uninstall <版本>

# 设置默认版本
nvm alias default <版本>

3. 安装hexo

参考:Hexo

npm install hexo-cli -g

由于node的版本过新可能会导致hexo使用异常,例如hexo g 生成空白的html文件等。

以下是本人使用可用的相关版本,其中node的版本是12.14.0

# hexo -v
hexo: 3.9.0
hexo-cli: 4.3.2
os: darwin 24.3.0 15.3.1

node: 12.14.0
v8: 7.7.299.13-node.16
uv: 1.33.1
zlib: 1.2.11
brotli: 1.0.7
ares: 1.15.0
modules: 72
nghttp2: 1.39.2
napi: 5
llhttp: 1.1.4
http_parser: 2.8.0
openssl: 1.1.1d
cldr: 35.1
icu: 64.2
tz: 2019c
unicode: 12.1

node相关版本

$ nvm -v
0.40.3

$ npm -v
6.13.4

$ node -v
v12.14.0

4. 安装hugo

hugo是跟hexo类似的博客工具。

安装参考:hugo macOS

brew install hugo

或者通过github下载对应的安装包:https://github.com/gohugoio/hugo/releases

hugo由于版本的不兼容问题也可能带来构建报错,以下是我博客使用的版本v0.101.0

wget https://github.com/gohugoio/hugo/releases/download/v0.101.0/hugo_0.101.0_macOS-ARM64.tar.gz

# hugo version
hugo v0.101.0-466fa43c16709b4483689930a4f9ac8add5c9f66+extended darwin/arm64 BuildDate=2022-06-16T07:09:16Z VendorInfo=gohugoio

hugo下使用的node的版本太低可能会导致博客生成的问题,例如本人使用12.14.0会有问题,而需要切换到node的v16.20.2的版本

# nvm use 16.20.2
# node -v        
v16.20.2

5. 安装gitbook

如果使用gitbook构建博客,则安装gitbook。

npm install -g gitbook-cli

gitbook 可用版本及node版本。

# gitbook --version
CLI version: 2.3.2
GitBook version: 3.2.3

# node -v                   
v12.14.0

6. 问题

6.1. zsh: bad CPU type in executable: node

执行node相关命令出现以上信息报错:zsh: bad CPU type in executable: node

原因是mac的M1/M4系列版本与node较低的版本不兼容导致,例如node 12 以下的版本可能出现上述的问题。可以执行以下命令修复。

softwareupdate --install-rosetta

6.2. hexo g 生成空白的html文件

由于node的版本太高不兼容导致,需要降低node的版本,例如本人使用12.14.0是可用的,因此安装12.14.0的版本修复。

6.3. hugo: Failed to connect to github.com port 443

问题:使用vpn代理导致hugo命令执行时连接github超时。

Failed to connect to github.com port 443 after 75018 ms: Couldn't connect to server

搜索mac代理,找到代理配置的端口,例如:1087。或者打开“设置 -> 网络和Internet -> 代理”,记录下当前的端口号。

执行以下命令。

# 使用VPN则设置代理
git config --global http.proxy http://127.0.0.1:1087
git config --global https.proxy https://127.0.0.1:1087

# 未使用VPN则取消代理
git config --global unset https.proxy
git config --global unset http.proxy

6.4. Error: Cannot find module 'prismjs/components/prism-dockerfile.js

问题:使用gitbook build出现以下报错。

 Error: Cannot find module 'prismjs/components/prism-dockerfile.js

原因是因为存在某些文档这个错误通常是由于某个 Markdown 文件中使用了 Dockerfile 语法高亮,但 GitBook 的 Prism.js 插件没有正确配置 Dockerfile 语言支持导致的。

因此需要找到哪些文档做了该解析配置,例如以下的文档,把文档中的dockerfile格式解析去掉即可:

   ```dockerfile
   FROM scratch
   COPY hello.wasm /

```

Copyright © www.huweihuang.com 2017-2018 all right reserved,powered by GitbookUpdated at 2025-07-06 09:33:09

results matching ""

    No results matching ""