那么简记一下配置过程吧。
不论如何,请首先参阅 官方文档。
我的配置思路是:
-
Run nginx service at server side, and set the
web root
to a certain dictionary such as/var/www/blog/
. -
Install
hugo
locally. -
Install
rsync
at both side.
当 hugo 生成静态文件后,由rsync
将本地hugo目录下/public/
中的文件同步到服务器/var/www/blog/
下,即完成了网站部署。通过ssh的rsync命令如下:
rsync -avh -e "ssh -i ./key.pem " --delete ./public/ root@host_name_of_your_server:/var/www/blog/
安装
https://github.com/gohugoio/hugo/releases 在大多数 Linux 发行版下安装 Hugo 都非常轻松,我使用过的有:
sudo apt install hugo
sudo zypper install hugo
皆可一行命令解决问题。至于如何初始化,官方文档所言毕尽。
有时在 Debian 下 hugo 版本过老,手动安装.deb包:
dpkg
install .deb
file:
https://github.com/gohugoio/hugo/releases
sudo dpkg -i hugo_<version>.deb
sudo dpkg -r hugo
主题
想必没人愿意使用官方示例主题。本站使用了https://github.com/reuixiy/hugo-theme-meme主题。基本的安装方式请参考其Github页面,其config.toml
中也有较为详尽的注释,个性化设置的过程中比较轻松。
我遇到的一个意外情况是:在config.toml
中:
[menu]
[[menu.main]]
pageref = "/posts/"
name = "文章"
...
此处菜单链接并未生效。将pageref
改为url
可解决此问题。
更多的个性化
为了防止更新主题时出现 git 合并冲突,需要在hugo网站目录(就是运行hugo
命令即可生成静态页面的目录)下,新建/layouts/
目录。其中的修改会覆盖./themes/meme/layouts/
下的对应文件。
我反对纯白的页面背景,于是为页面添加了一个背景颜色————正如您所见。
编辑./layouts/index.html
和./layouts/partials/pages/post.html
,在其中添加:
<!-- Custom color -->
<head>
<style>
body {
background-color: #f2e6f4; /* 任何你喜欢的颜色 */
}
</style>
</head>
<!-- Custom color -->
即可。
是的,感谢ChatGPT。
至于服务端的 Nginx 配置, 此处也不再赘述。
我也未作出更多的修改了。