再“见”hexo——重新理解hexo
从两年前初次接触hexo,到工作之后再次拾起hexo并解决了一些坑。我想重新再梳理一下hexo的用法和安装中的坑。
1.Node.js npm hexo他们是什么关系?
(1)Nodejs
官方解释:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时。
简单的说 Node.js 就是运行在服务端的 JavaScript。
我目前的理解是,对于hexo来说,Node.js是将hexo的markdown文本编写成html等文件的编译器。
(2)npm
npm 是 JavaScript 世界的包管理工具。
我的理解,npm是用于安装各种第三方JavaScript模块的软件管理器。类似于Ubuntu/Debian系统中的apt包管理器或者是CentOS系统中的yum。
(3)hexo
官方解释:Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
我的简单理解:hexo可以让你用Markdown编写静态博客。
2.如何安装hexo
(1)构建本地博客源码仓库
最佳方案,你需要参考hexo官网的安装教程。我的经验是不同的操作系统安装方法不一样,请务必尽量遵循官网的安装建议,否则不一定哪里会出现问题。
(2)生成远程博客托管仓库
你可以选择托管到github或coding上或者是你自己的主机上,这一点网上的许多教程都有说过,这里不再赘述。
3.一些坑
(1)如果你发现hexo生成文件后无法开启本地模拟服务器,即hexo s
无法识别且hexo的帮助中没有server指令。那么你可能没有安装hexo-server
。Hexo 3.0 把服务器独立成了个别模块,你必须先安装hexo-server
才能使用。
$ npm install hexo-server --save
安装完成后,输入以下命令以启动服务器,你的网站会在http://localhost:4000
下启动。
$ hexo server
如果你想要更改端口,或是在执行时遇到了EADDRINUSE
错误,可以在执行时使用-p
选项指定其他端口,如下:
$ hexo server -p 5000
(2)在输入hexo deploy
后,hexo报如下错误:
ERROR Deployer not found: git
这是由于你没有安装hexo-deployer
,执行以下命令来进行安装:
$ npm install hexo-deployer-git --save
(3)在在输入hexo deploy
后,hexo提示:
You should configure deployment settings in _config.yml first!
查看一下你的hexo根目录下的_config.yml
中deploy:
的配置是否正确。应类似于以下内容:
deploy:
type: git
repo: git@github.com:Rock718/rock718.github.io.git
注意:这里的type:
和repo:
后面至少应该有一个空格。如果你有多个repo:
,样子应该类似这样:
deploy:
type: git
repo:
github: git@github.com:Rock718/rock718.github.io.git
coding: git@coding.com:**********
一定要注意缩进的问题
(4)如果你想在hexo中插入图片,建议参考官网的推荐,使用形如:
{% asset_img example.jpg This is an example image %}
当然,在这之前你需要配置hexo根目录下的_config.yml
中post_asset_folder:
为true