最近用 hugo 搭建了这个网站,我总结了一些经验

介绍

hugo 是由 Go 编写的快速现代静态网站生成器,适合对性能有高要求的场景

  • 它的构建速度极快
  • 跨平台(windows、macos、linux)
  • 强大的主题

我们可以用它来搭建

  • 个人博客
  • 公司官网
  • 知识库
  • 各种文档

hugo 的 star 逐年稳步升高,可见它很受欢迎

Star History Chart

安装

macOS

Homebrew

brew install hugo

Linux

sudo apt install hugo

Windows

预编译二进制文件

安装后验证 hugo version

开始

hugo new site demo
cd demo
git init
git submodule add https://github.com/adityatelange/hugo-PaperMod.git themes/paper
echo "theme = 'paper'" >> hugo.toml
hugo server

SEO 优化

🌟页面关键词与描述

---
title: "hugo 博客搭建"
keywords:
- hugo
- build blog
- seo

description: "hjywiki 的个人博客, 如何搭建一个 hugo 博客和 seo 优化"
---

i18n

🌟我推荐的是

├── demo.en.md └── demo.zh-cn.md

这种命名方式

然后在 hugo.toml 中添加下面的配置

# 设置默认的语言 ["en", "zh-cn", "fr", "pl", ...]
defaultContentLanguage = "en"
# 网站语言, 仅在这里 CN 大写 ["en", "zh-CN", "fr", "pl", ...]
languageCode = 'en'
# 是否包括中日韩文字
hasCJKLanguage = true
# 是否使用 emoji 代码
enableEmoji = true

defaultContentLanguageInSubdir = false  # 不使用子目录区分语言

[languages]
  [languages.en]
    languageCode = "en"
    languageName = "English"
    weight = 1

  [languages.zh-CN]
    languageCode = "zh-CN"
    languageName = "中文简体"
    weight = 2

部署

🌟上传到 github 后,通过 action 部署在个人服务器上

name: hugo push to github pages

on:
  push:
    branches:
    - main

jobs:
  build-deploy:
    runs-on: ubuntu-24.04
    steps:
    - uses: actions/checkout@v4
      with:
        submodules: true

    - name: Setup Hugo
      uses: peaceiris/actions-hugo@v2
      with:
        hugo-version: '0.146.6'
        extended: true

    - name: Build
      run: HUGO_ENV=production hugo --gc --minify


    - name: Deploy to Server
      uses: appleboy/scp-action@v0.1.7
      with:
        host: ${{ secrets.SERVER_HOST }}
        username: ${{ secrets.SERVER_USER }}
        password: ${{ secrets.SERVER_PASSWORD }}
        source: "public/*"
        target: "/www/wwwroot/hugo/"

⚠️注意,这里需要提供 SERVER_HOST、SERVER_USER、SERVER_PASSWORD 的配置,在 github 你的项目中 setting->Secrets and variables->Actions->New repository secret,填写 key 与 value