• Golang应用 ━━ 安装与配置hugo博客系统


    先吐槽一下,写的好几篇关于五行八卦的文章竟然被csdn提示违法国家法律。。。那只能考虑自建blog,不能被捆绑手脚了。
    正巧也一直想搞一个本地的markdown系统,毕竟md放在本地总是第一要务。
    目前流行的hugo试下来还蛮好,发文记录安装过程。

    全程手工下载,不用git

    hugo官网

    一、准备执行文件hugo.exe

    1. 二进制
      直接搞现成的~~
      执行文件下载网址:https://github.com/gohugoio/hugo/releases

    2. 源码生成
      源码下载网址:https://github.com/gohugoio/hugo
      解压缩全部,使用命令go build,这个就不用多废话了吧。。。哈哈。
      注意,如果提示你build不成,请查一下你的go版本是不是最新的,写本文时用的go 1.18.3,如果是go 1.17.x版本则不能正常生成。

    二、生成blogTest项目

    hugo.exe放于D:/test/hugo目录内,使用cmd命令

    hugo new site blogTest
    
    • 1

    执行后生成D:/test/hugo/blogTest目录,这个目录是当前blogTest项目的根目录,然后把hugo.exe移入这个真正的根目录,待会儿的命令需要用到他。

    三、安装模板testTpl

    官方模板下载地址:https://themes.gohugo.io/

    假定下载模板testTpl,下载后解压缩到D:/test/hugo/blogTest/themes/testTpl中。

    四、创建文章first.md和about.md

    D:/test/hugo目录内,使用cmd命令

    hugo new first.md
    hugo new posts/about.md
    
    • 1
    • 2

    此时生成目录和md文件:
    D:/test/hugo/blogTest/content/first.md
    D:/test/hugo/blogTest/content/posts/about.md

    about.md文件内容如下:

    ---
    title: "About"
    date: 2022-06-26T16:15:50+08:00
    draft: true
    ---
    
    • 1
    • 2
    • 3
    • 4
    • 5

    注意这条draft: true,意思是本文为草稿,文章后面要用到。

    在最后---的下面写上一句## 好吧,测试一下,markdown语言就不多说了。

    五、自建服务器

    D:/test/hugo目录内,使用cmd命令

    hugo server --theme=testTpl --buildDrafts --watch
    
    • 1
    1. theme:使用什么模板;
    2. buildDrafts:将草稿也显示出来;
    3. watch:任何文章修改都将实时同步刷新;

    在这里插入图片描述

    go server命令将自动启用内置web server,默认在本机浏览器使用http://127.0.0.1:1313打开,具体端口号请注意终端的结果提示。

    六、生成静态文件

    D:/test/hugo目录内,使用cmd命令

    1. 常规模式
    hugo
    
    • 1
    1. 草稿也生成模式(-B--buildDrafts的缩写)
    hugo -B
    
    • 1
    1. 各种命令模式
    hugo --theme=testTpl --buildDrafts
    
    • 1

    在这里插入图片描述

    生成的静态文件都在D:/test/hugo/blogTest/public,包含文章、样式、多媒体文件等。

    此时将public目录中的所有文件上传到托管服务器就能对外使用。

    七、配置文件

    有两处配置是重点,如果这两处不配置,则生成的静态文件无法正常显示或舒畅使用:

    1. 系统配置
      D:/test/hugo/blogTest/config.toml内容中修改baseURL和新增theme
      baseURL为项目在web server上的根目录(可加域名也可不加,但需要符合绝对和相对目录的规则)。
      content为文章所在本机目录,可以将文章原件单独存放,hugo系统归另一个目录。
      theme为所使用的模板名称。
      uglyURLs将标题名作为文件名或作为目录名,默认为false,如果本地用图,则建议使用true
    baseURL = 'http://127.0.0.1/hugo/blogTest/public/'
    contentdir = "c:/blog/test"
    languageCode = 'en-us'
    title = 'My New Hugo Site'
    theme = "testTpl"
    uglyURLs = true
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    1. 文章配置
      D:/test/hugo/blogTest/content/posts/about.md文章中的draft: true改为draft: false,否则直接使用hugo命令的话,草稿是不会生成静态文件的,也不会出现在文章列表里,go server命令同理。
      本例first.mdabout.md文件中只有about.md非草稿,即draft: false,所以使用hugo命令直接生成静态文件的话,将出现只含一篇文章的首页。
      在这里插入图片描述

    八、开始写博客

    如果使用Obsidian写博客,则为了附件能正常使用,建议设置如图,重点是插入基于当前笔记的相对路径
    在这里插入图片描述
    详细的obsidian使用方法:《obsidian配合hugo的使用,让markdown本地编辑软件与在线化无缝衔接》

    再次强烈建议:实际使用时尽量将博客原文存在其他目录,hugo的程序放在另一个目录。
    在hugo的config.toml中设置contentdir目录来读取博客原文。

    参考:
    Hugo 快速开始指引
    世界上最快静态博客生成工具 Hugo 入门折腾
    启用Ugly URL
    配置 Hugo

  • 相关阅读:
    计算机毕业设计Java校园生活信息服务平台(源码+系统+mysql数据库+Lw文档)
    xxe攻击(XML外部实体)
    GPU驱动及CUDA安装流程介绍
    VSCode很好,但我以后不会再用了
    代码随想录算法训练营第20天
    docker compose
    Maven的详细安装步骤说明
    Android一个有用又有趣的知识点:BindingAdapter
    Cesium 加载模型不显示
    GraphPad Prism 10 for Mac(统计分析绘图软件)
  • 原文地址:https://blog.csdn.net/snans/article/details/125472346