开端-hugo博客搭建-使用reimu主题
1、安装hugo
Windows下手动安装hugo步骤:
1.1、参考文档
hugo官方中文文档主页:Hugo官方文档中文版|Hugo中文文档 | Hugo官方文档
1.2、下载安装包
hugo安装包:Release v0.154.4 · gohugoio/hugo Windows环境下可以下载安装包:hugo_extended_withdeploy_0.154.4_windows-amd64.zip
1.3、解压缩
解压缩到F:\Hugo\Hugo
此时hugo.exe应用程序的路径为:F:\Hugo\Hugo\hugo_extended_withdeploy_0.154.3_windows-amd64
1.4、添加hugo到环境变量
打开环境变量设置界面:右键我的电脑-属性-高级系统设置-环境变量
或者按下win键,直接搜索环境变量
在系统变量中的Path中,新建一个环境变量,将hugo应用程序的路径F:\Hugo\Hugo\hugo_extended_withdeploy_0.154.3_windows-amd64添加进去
1.5、验证环境
打开cmd窗口,输入hugo version,没报错就是ok了。
1.6、创建工程
新建目录F:\Hugo\Project,在这个目录下打开cmd命令窗口,输入hugo new site MyBlog,hugo会自动创建全部工程文件
2、安装主题
在hugo官方主题网站下,有很多主题可供选择,这里有很多主题,第一眼就看上hugo-theme-reimu这个主题了
2.1、手动主题下载
reimu主题下载地址:GitHub - D-Sketon/hugo-theme-reimu: 一款博丽灵梦风格的Hugo主题 | A Hakurei Reimu style Hugo theme. 💘Touhou💘
进入git界面,点击tags,选择版本v0.14.2,直接点击版本下方的zip下载压缩包:https://github.com/D-Sketon/hugo-theme-reimu/archive/refs/tags/v0.14.2.zip
2.2、解压缩主题
将解压后的主题文件,全部复制到工程目录F:\Hugo\Project\MyBlog\themes
将themes原本的文件夹名字hugo-theme-reimu-0.14.2 改为 reimu (只是为了方便)
3、修改配置
3.1、修改hugo.toml
baseURL = 'https://example.org/'
title = 'MyBlog'
theme = 'reimu'
languageCode = 'zh-CN'
defaultContentLanguage = 'zh-CN'
[languages]
[languages.zh-CN]
languageName = '简体中文'
weight = 1
hasCJKLanguage = true
主要的地方在于:
theme = 'reimu' 这里就是设置的主题名称
title = 'MyBlog' 修改这个MyBlog可以修改博客的名称
后面是设置语言的配置,参考主题文件夹中的readme文档添加
3.2、运行博客
cmd进入MyBlog目录,输入hugo server
打开浏览器,输入http://localhost:1313/
正常情况下可以正常运行博客了,整个博客看起来是那么回事了,不过还有一些小问题,比如不显示头像,关于和友链等打不开等等问题。
3.3、复制文件
复制主题themes\reimu_example目录下的所有文件到MyBlog\content目录下(这个目录下的about和friend文件就是关于和友链的页面内容,post目录则是具体博客文章的路径)
复制主题themes\static目录下的所有文件到MyBlog\static目录下(存放各种静态资源的地方,头像、图片、鼠标美化图片等等)
复制主题themes\data目录下的所有文件到MyBlog\data目录下(covers用于设置封面,文章会随机使用这个里面的图片链接,主题作者这里只写了三个链接,但作者实际上传了28张,也就是这个文件的内容可以继续括到编号28;friends用来设置友链;vendor用来设置各种资源地址,里面默认使用webcache,有可能有些功能用不了,可以把功能前面的webcache改成local,因为所有的资源文件都包括在了本地)
复制主题themes\config目录下的所有文件到MyBlog\config目录下(默认工程没有config文件夹,直接全部复制过来,params这个文件中可以设置很多东西,比如头像设置、背景图片设置、部分主题颜色、作者名、版权、ICP备案等等)
在MyBlog\static目录下新建文件夹avatar,这个文件夹里面放头像图片,找到一张webp格式的图片,命名为avatar.webp(这是因为默认的头像路径和名字是这个)
刷新浏览器(由于浏览器自带缓存可能会导致资源更新不及时,最好是ctrl+F5刷新一下),可以看到头像更新了,友链等界面可以正常打开了
3.4、添加文章
在MyBlog\content\post目录下,新建test.md文件,md文件内容如下:
---
title: '测试'
date: 2026-01-01T12:30:54+08:00
---
你好啊!
三横杠之间的内容,title为文章标题,date为时间
保存后在浏览器可以看到文章已经显示出来
4、部署博客
4.1、下载安装git
安装过程一路next
4.2、新建git仓库
注册并登录github
新建仓库,仓库名为 github账户名.github.io,填写完成后直接创建
4.3、部署博客
在MyBlog工程中的public目录下,打开cmd
另外一点,工程根目录下的hugo.toml文件,需要将baseURL改为创建的仓库地址
baseURL = 'https://github账户名.github.io/'
在上传之前,首次使用git需要配置用户名和邮箱地址,在cmd中输入命令:
git config --global user.name "你的github用户名"
git config --global user.email "你的github邮箱地址"
配置完成后就可以上传代码了:
git init
git remote add origin https://github.com/你的用户名/你的用户名.github.io.git
git add .
git commit -m "first commit"
git branch -M main
git push -u origin main
等待github上仓库-设置-pages页面部署完成,直接点击Visit site打开网页,或者浏览器输入 https://你的github用户名.github.io,就可以看到博客了
5、遇到的问题
5.1、打开底部copyright功能后,本文链接地址还是调试时的本地地址
删除工程目录下的public文件夹
在cmd输入hugo重新生成public文件夹后重新部署
使用hugo server生成的public会使用本地地址,而使用hugo生成的public会使用 hugo.toml中的baseURL
5.2、目录结构改变之后push git报错
首次使用的是这个命令git push -u origin main
正常来说后续更新文章可以使用这个命令git push origin main
目录结构发生改变之后,push报错,强制上传git push -f origin main
5.3、页脚访客数不显示
主题使用的是2.3.0版本的不蒜子,不蒜子官方已经到了3.6.9,不确定是不是已经不支持之前的写法了,直接更新到3.6.9
将下载的js文件复制到目录 MyBlog\static\resources\busuanzi@3.6.9,两个js文件只能使用一个,具体差异在于显示的格式,一个是具体数量,一个是带单位的
修改MyBlog\data目录下的vendor文件,删除或者注释掉之前的busuanzi,3.6.9版本添加下面这段内容,如果是下载的别的版本,integrity需要重新计算哈希值
busuanzi:
src: local|busuanzi@3.6.9/busuanzi.min.js
integrity: sha384-/a4POcjP+TuRxeDVCdtn3SzMCfjBAm3XAwHuuUt9gch0p51XM1q5pZn/r+JcgRpf
再仿照官网给的写法,修改MyBlog\layouts\partials目录下的footer.html文件,没有这个文件就从主题中复制过来再修改

修改点为原本主题写的id是busuanzi_value_site_pv,改成官网的写法busuanzi_site_pv
<div>
<span class="icon-eye"></span>
<span id="busuanzi_container_site_pv"
>{{ i18n "busuanzi.pv" }} <span
id="busuanzi_site_pv"
></span
></span>
|
<span class="icon-user"></span>
<span id="busuanzi_container_site_uv"
>{{ i18n "busuanzi.uv" }} <span
id="busuanzi_site_uv"
></span
></span>
</div>
修改后,hugo server 命令进行本地调试的话,可以看到页脚显示 域名/IP已被禁用,这就算是ok了,上传git后就能正常显示了

5.4、关闭页面的版权信息
params中打开article_copyright功能后,友链、关于等页面也会在文章底部显示版权信息。如果不需要显示的话,在对应页面的md文件头部添加copyright: false
---
title: 关于
description: 关于
copyright: false
date: 2026-01-11T13:00:00+08:00
lastmod: 2026-01-11T13:00:00+08:00
---
5.5、持续更新中……
