把落地页换成了正经博客

· 2 分钟阅读 #建站#Hugo

这个站点之前是一张单页。深色渐变、玻璃卡片、几个统计数字——看起来还行,但只用来看。

问题是它不能写东西。每加一篇文章就得复制一遍 HTML,改标题、改日期、改列表,第三次之后就不想再动了。

换成 Hugo 的理由

候选有三个:WordPress、Ghost、静态生成器。

前两个都要数据库和常驻进程,为几篇文章在一台 2G 内存的机器上跑 PHP 或 Node,不划算。静态生成器里 Hugo 的优势很直接:

  • 一个二进制文件,无运行时依赖
  • 构建几百篇文章在毫秒级完成
  • 输出纯静态文件,Caddy 的 file_server 就能直接服务

装起来就三条命令:

curl -sL -o hugo.tar.gz \
  https://github.com/gohugoio/hugo/releases/download/v0.169.0/hugo_0.169.0_linux-amd64.tar.gz
tar xzf hugo.tar.gz hugo
install -m 755 hugo /usr/local/bin/hugo

结构

源码放在 /root/blog,构建产物直接输出到站点目录:

cd /root/blog && hugo --minify --destination /var/www/html

目录长这样:

路径作用
content/posts/文章,一篇一个 Markdown 文件
layouts/模板
static/css/样式
hugo.toml站点配置

写文章

新建一篇就是加一个文件:

hugo new content posts/新文章.md

前置参数里填标题、日期、标签,正文用 Markdown 写。标签会自动生成 /tags/ 下的归档页,RSS 也是自动生成的。

主题

没有用现成主题。原因很简单:现成主题往往带一堆用不到的功能,还要额外配置。手写三个模板文件(列表页、详情页、首页)加上一份 CSS,总共不到 400 行,改起来心里有数。

风格沿用了原来那张单页的深色调,看着连贯一些。

还差什么

没有评论。想过接 Giscus,但那意味着每个访客都要加载第三方脚本,为一个几乎没人留言的博客不值得。

想留言,发邮件就行。