Hexo命令与服务器
介绍 Hexo 常用命令的作用。
Hexo命令与服务器
参考官方文档 Hexo
本文基于 hexo: 3.8.0
命令
常用命令
命令 | 简写 | 描述 |
---|---|---|
hexo init [folder] |
新建网站 | |
hexo new [layout] <title> |
新建文章 | |
hexo generate |
hexo g |
生成静态文件 |
hexo publish [layout] <filename> |
发布草稿 | |
hexo server |
hexo s |
启动服务器 |
hexo deploy |
hexo d |
部署网站 |
hexo clean |
清除缓存文件 | |
hexo list |
列出站点信息 | |
hexo version |
显示 Hexo 版本 |
init
1 | hexo init [folder] |
新建一个网站。如果没有设置 folder ,Hexo 默认在目前的文件夹建立网站。
new
1 | hexo new [layout] <title> |
新建一篇文章。如果没有设置 layout 的话,默认使用 _config.yml 中的 default_layout 参数代替。如果标题包含空格的话,请使用引号括起来。
generate
1 | hexo generate |
或简写为:
1 | hexo g |
生成静态文件,生成的文件保存在 public 文件夹内。
选项 | 描述 |
---|---|
-d, --deploy |
文件生成后立即部署网站 |
-w, --watch |
监视文件变动 |
监视文件变动
1 | hexo generate --watch |
Hexo 能够监视文件变动并立即重新生成静态文件,在生成时会比对文件的 SHA1 checksum,只有变动的文件才会写入。
完成后部署
可执行下列的其中一个命令,让 Hexo 在生成完毕后自动部署网站,两个命令的作用是相同的。
1 | hexo generate --deploy |
或简写为:
1 | hexo g -d |
server
1 | hexo server |
或简写为:
1 | hexo s |
启动服务器。默认情况下,访问网址为: http://localhost:4000/
选项 | 描述 |
---|---|
-i, --ip |
Override the default server IP. Bind to all IP address by default. |
-l, --log [format] |
Enable logger. Override log format. |
-o, --open |
Immediately open the server url in your default web browser. |
-p, --port |
Override the default port. |
-s, --static |
Only serve static files. |
deploy
1 | hexo deploy |
或简写为:
1 | hexo d |
部署网站。
参数 | 描述 |
---|---|
-g, --generate |
部署之前预先生成静态文件 |
clean
1 | hexo clean |
清除缓存文件 (db.json) 和已生成的静态文件 (public)。
在某些情况(尤其是更换主题后),如果发现对站点的更改无论如何也不生效,可以运行该命令清除缓存后重新生成静态文件。
hexo-server
Hexo 3.0 把服务器模块独立出来,如果 hexo server
命令无法使用,需要单独安装 hexo-server 才能使用。
1 | npm install hexo-server --save |
启动服务器
安装完成后,输入以下命令以启动服务器,网站会在 http://localhost:4000 下启动。
1 | hexo server |
或者
1 | hexo s |
在服务器启动期间,Hexo 会监视文件变动并自动更新,无须重启服务器。
修改端口
如果想要更改端口,或是在执行时遇到了 EADDRINUSE 错误,可以在执行时使用 -p
选项指定其它端口,例如:
1 | hexo server -p 5000 |
静态模式
在静态模式下,服务器只处理 public 文件夹内的文件,而不会处理源文件变动,在执行时,应该先自行执行 hexo generate,此模式通常用于生产环境(production mode)下。
1 | hexo server -s |
自定义IP
服务器默认运行在 0.0.0.0
,我们可以覆盖默认的 IP 设置,例如:
1 | hexo server -i 192.168.1.1 |
指定这个参数后,就只能通过该 IP 才能访问站点。
例如,对于一台使用无线网络的笔记本电脑,除了指向本机的 127.0.0.1
外,通常还有一个 192.168.*.*
的局域网 IP,如果像上面那样使用 -i
参数,就不能用 127.0.0.1
来访问站点了。对于有公网 IP 的主机,如果您指定一个局域网 IP 作为 -i
参数的值,那么就无法通过公网来访问站点。
输出调试信息
1 | hexo server --debug |