Hugo 博客搭建与 PaperMod 配置全记录
为什么选 Hugo Hugo 是一个用 Go 写的静态网站生成器。它和 WordPress 这类动态博客的区别是: Hugo WordPress 原理 Markdown → 预生成 HTML 文件 每次访问查数据库 + 渲染 PHP 服务器要求 纯静态文件,Nginx 直接 serve 需要 PHP + MySQL 内存占用 0(只有 Nginx 的几 MB) MySQL 400M+ 安全 没有后台、没有数据库,攻击面极窄 PHP + 插件 = 常见攻击入口 写作方式 VS Code 写 Markdown 浏览器里写 速度 秒开 看服务器性能 版本控制 Git 数据库导出,不优雅 对于一台 2C2G 的轻量服务器,Hugo 是唯一正确的选择。 技术栈 云服务器:腾讯云轻量应用服务器 2C2G 3Mbps(Ubuntu 22.04) 静态生成:Hugo 0.146.5 主题:PaperMod(Gitee 镜像) Web 服务器:Nginx 部署方式:Hugo 生成 HTML → Nginx 直接 serve HTTPS:等域名备案下来后 Let's Encrypt 免费证书 博客目录结构 ~/myblog/ ├── config.yml ← 博客配置(核心文件) ├── content/ ← 所有文章和页面 │ ├── posts/ │ │ ├── 技术/ │ │ ├── 杂文/ │ │ ├── 美食/ │ │ └── 健身/ │ ├── about.md ← 关于页面 │ ├── archives.md ← 时间轴页面 │ ├── search.md ← 搜索页面 │ └── tags/_index.md ← 标签页面 ├── layouts/ ← 自定义布局(覆盖主题默认) │ ├── _default/ │ │ ├── archives.html ← 时间轴模板(来自 sulv-hugo-papermod) │ │ └── search.html ← 搜索模板 │ └── partials/ │ └── index_profile.html ← 首页 profileMode 模板 ├── assets/js/ ← 自定义 JS │ ├── fastsearch.js │ └── fuse.basic.min.js ├── static/img/ ← 静态资源(头像、二维码等) ├── themes/PaperMod/ ← Hugo 主题(不改动) └── deploy.sh ← 构建+部署脚本 config.yml 关键配置 首页:profileMode PaperMod 内置两种首页模式。homeInfoParams 是纯文字,profileMode 是头像 + 按钮布局。选择后者: ...