Contents

Hugo个人博客搭建

/blog/电脑折腾/附件/VPS与建站/Hugo个人博客搭建.jpg

前言

一直想弄一个轻量级的博客,操作简单,便于迁移。试过wordpress和自建静态博客,最后发现还有hugo这类好东西。整体对比起来就是:

  • wordpress虽然很强大,但也比较复杂,需要php和sqlserver,对于我这种不想太折腾的人来说,部署太过麻烦。而且迁移也让人头大,或者说如果有一天我不玩vps了,难道要在自己电脑上弄一套wordpress才能建站?
  • 自建静态博客就是用现成的静态网页模板修改里边的内容。虽然好看,方便部署,而且在本地直接打开html文件也能看,迁移性好一些,但是如果想换模板,那就是噩梦。而且写文章时,需要修改html代码,也挺麻烦。
  • 突然有一天,发现了Hugo这类静态博客生成器,打开了博客建站新世界。原始博文使用markdown文档保存,类似于txx文本文档,简单的几个语法即可实现排版,兼容性非常好,也方便迁移。Hugo的安装也简单,主题设置也简单,生成网站速度快,而且网站是静态的,部署成也本低,直接扔到github pages这类免费网页托管上就行。简直是我这种轻量级博主的福音。

开始安装配置Hugo

Windows系统下

在hugo官网gohugo.io 有全部的文档教程。

  • 下载hugo∶在github上gohugoio/hugo 下载最新版Hugo程序(下载地址在页面右侧的Releases处)。注意需要下载extended版,因为非extended版的很多主题都不支持使用。下载后解压,可以把hugo.exe程序放在c∶/program files/hugo/hugo.exe的位置。
  • 添加环境变量,方便使用Hugo。从开始菜单的搜索中搜索“编辑系统环境变量”并打开窗口,或者在“此电脑”上点右键,选择“属性”-“高级系统设置”。之后切换到“高级”页签,点击右下方“环境变量…”。此时会有“xxx的用户变量”和“系统变量”。区别是前者只能让当前用户使用Hugo,后者能让此电脑的所有用户都是用Hugo。
    • 比方说选择了“系统变量”,则在系统变量下边找到PATH并双击,再弹出的窗口中点“新建”,输入放置Hugo.exe的路径,例如刚才的c∶/program files/hugo/,点确定关闭设置PATH的窗口,再点确定关闭设置环境变量的窗口,再点确定使设置生效。
  • 测试环境变量是否生效:再任意位置打开CMD或者WindowsPowerShell,输入hugo version或者hugo -help查看hugo是否能运行。正常运行的话会输出hugo的版本号或者帮助说明。

Debian系统下

分别输入以下3个命令。分别是更新软件包列表、更新已安装的软件包、安装hugo

sudo apt update

sudo apt upgrade

sudo apt install hugo

开始建站

  • 首先新建一个博客,打开CMD或者WindowsPowerShell,用cd命令定位到要建站的目录,比方说: cd d:/ 开始创建网站: hugo new site myblog myblog可以替换成自己想用的文件夹名(也是默认的网站名)。之后定位到网站文件夹内部(把下边命令的myblog替换成自己网站文件夹的名称): cd myblog
  • 创建第一篇文章:再Powershell中定位到网站目录里,使用hugo new posts/文章名.md命令在content/posts目录下生成一个"文章名.md"的博客markdown文章。打开文件,可以进行修改编辑。注意文件头的格式,建议修改成:
    ---
    title: 文章主题
    date: 2023-08-17T16:11:23+08:00
    categories: [
        "这里是文章分类",
        "多个分类可用引文逗号隔开"
    ]
    tags: [
    "这里是文章标签",
    "多个标签可用逗号隔开",
    "就像这样"
    ]
    draft: true
    ---
    
    PS:当draft为false时,视文章为草稿,默认不会生成网页。
  • 下载一个主题:Hugo默认是没有任何主题的。去官网主题板块 找一款主题,然后下载,解压放在网站目录里的themes文件夹下。根据主题的说明文档,对网站目录的hugo.toml文件(网站设置文件)进行修改。
  • 生成预览网站:执行命令hugo server -D --disableFastRender,会提示通过http://localhost:1313/来预览网站。此时,再对文章的md文件进行修改,保存后网站内容会同步刷新,十分方便。
    • 命令中的-D是指包括草稿(draft)在内的所有页面都会被渲染。
    • 命令中的--disableFastRender是禁用快速渲染,这可能会更好地适应一些更复杂的主题和网站结构。
  • 生成正式网站:执行hugo命令,网站将根据配置和内容生成到网站目录中的 public 文件夹中。
  • 发布网站:把public文件夹中的全部文件复制到服务器中,或使用github同步到githubpages中,及完成了网站的发布。可以输入网址进行访问了。