使用Hugo、Github Pages搭建自己的博客

news2025/4/8 17:43:25

文章目录

    • 搭建博客框架及对比
    • 使用Hugo搭建博客
    • 使用Github Pages部署博客

搭建博客框架及对比

在众多的博客框架中,Hugo、Jekyll和Hexo因其出色的性能和易用性而备受推崇。

特点HugoJekyllHexo
速度极高中等较高
易用性中等高(熟悉JavaScript者)
社区中等活跃
语言GoRubyNode.js
部署简单简单(与GitHub Pages集成)简单
插件/主题丰富非常丰富丰富

Hugo:

  • 速度:极快的生成速度,适合需要频繁更新内容的用户。
  • 易用性:简洁的界面和Markdown支持,降低了学习成本。
  • 社区:虽不如Jekyll庞大,但足够应对常见问题。

Jekyll:

  • 速度:中等速度,适合定期更新内容的用户。
  • 易用性:Ruby语言基础,需要一定的学习曲线。
  • 社区:庞大的社区支持,丰富的插件生态。

Hexo:

  • 速度:较快的生成速度,满足大部分用户需求。
  • 易用性:Node.js环境,适合熟悉JavaScript的用户。
  • 社区:活跃的社区,不断更新的插件和主题。

使用Hugo搭建博客

这里选择了Hugo作为我的博客框架。它的极速和简约风格符合我的需求,让我能够专注于内容的创作。
同时,Hugo的可定制性也让我能够打造出独特的个人博客。虽然Jekyll和Hexo也有各自的优点,但Hugo更符合我的个人喜好和博客目标。

Hugo是一个使用Go语言编写的快速、简单和灵活的静态网站生成器。
它使用起来非常简单,相对于Jekyll复杂的安装设置来说,Hugo仅需要一个二进制文件hugo(hugo.exe)即可轻松用于本地调试和生成静态页面。
Hugo可以将你写好的MarkDown格式的文章自动转换为静态的网页。
除此之外,Hugo内置web服务器,可以在修改MarkDown文章之后切换到浏览器,页面会检测到更新并且自动刷新,呈现出最终效果,能极大的提高博客书写效率。

要开始使用Hugo,你需要先安装它。
可以访问Hugo的官方网站下载对应操作系统的版本,并按照指南进行安装。
安装完成后,你就可以创建你的第一个博客了。

Hugo的安装方式有两种,一种是直接下载编译好的Hugo二进制文件。另一种方式是获取Hugo的源码,自己编译。
如果只是使用Hugo推荐第一种方式,下载地址。

如果Hugo官网,英文阅读起来有困难,可以参考:

  • hugo中文帮助文档: https://hugo.aiaide.com
  • hugo中文文档: https://www.gohugo.org

安装好Hugo之后,就可以根据自己的喜好选择一个主题。可以访问Hugo Themes浏览各种主题。
每个主题下都有详细说明和示例,帮助你快速上手,这里以我的博客所选择的 主题zozo为例。

  1. 进入 hugo 的站点目录运行下面的命令 git clone https://github.com/varkai/hugo-theme-zozo themes/zozo
  2. 进行博客配置,config.toml是网站的配置文件,主题提供了一个示例配置文件config.toml。配置文件中对大部分配置都有详细的注释说明,复制该文件到站点目录下,根据自己的情况修改即可。
  3. 在命令行窗口,使用命令hugo server运行博客,在浏览器地址栏输入 localhost:1313 来访问站点;

使用Github Pages部署博客

最初希望能将自己学习的知识记录下来,梳理自己的思想,于是开始搭建博客。
发布过一些其他博客网站,但是都用着不太舒服,最后选择了自己搭建,开始是自己买服务器,用halo搭建,随着时间的推移,当时囊中羞涩没有再续费,最后找到一个解决办法使用GitHub Page搭建。
直接把网站托管到GitHub Page上,这样,一个免费、无限流量的博客系统就搭建完成了。同时,通过github你可以方便对博客文章进行管理和追踪。

如果在本地已经构建起来博客,就可以向GitHub推送,推送完成之后就可以通过username.github.io就可以访问得到你的博客了,这就完成了博客的部署。

需要注意的是,Github Pages需要在跟路径下创建一个docs文件夹,这个文件夹就是你的网站页面,我的是这样,docs里面保证根目录有一个index.html文件即可。
请添加图片描述

一般我都是在本地通过hugo -d .\docs\命令生成静态页面到docs文件夹下,然后将docs文件夹推送到github。

一些博客其他功能参考链接:

  • hugo给文章添加目录: https://www.ariesme.com/posts/2019/add_toc_for_hugo
  • 使用hugo搭建个人博客站点: https://blog.coderzh.com/2015/08/29/hugo
  • 不蒜子计数统计: https://busuanzi.ibruce.info
  • 暗黑主题: https://darkmodejs.learn.uno

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1607145.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

力扣112,路径总和

给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 叶子节点 是指没有子节点…

怎样实现opc采集数据后传给web后端

现在很多老工厂要进行数字化改造,现场生产的各种数据需要传到web后端,很多工厂现场原有的自动监控系统已经采集了现场的各种数据,只是没有形成联网。如果前端自动化系统全部废除,重新做数字化控制系统,成本投入太大&am…

GIS地理信息平台+智慧巡检技术解决方案(Word原件)

1.系统概述 1.1.需求描述 1.2.需求分析 1.3.重难点分析 1.4.重难点解决措施 2.系统架构设计 2.1.系统架构图 2.2.关键技术 3.系统功能设计 3.1.功能清单列表软件全套精华资料包清单部分文件列表: 工作安排任务书,可行性分析报告,立项…

风速Weibull分布和光伏Beta分布的参数拟合方法(含matlab算例)

在风光场景生成、随机优化调度等研究中,常常假设风速服从Weibull分布,太阳辐照度服从Beta分布。那我们如何得到两个分布的参数呢?文本首先介绍了风速Weibull分布和辐照度Beta分布的基本概率模型及其性性质,之后以MATLAB代码为例阐…

Linux操作系统-10-Iptables

一、iptables防火墙介绍 无论IPtables还是Firewalld都是对netfilter防火墙框架进行的命令层的封装 1、三件事 防火墙做的三件事: 获取流量匹配规则给出反馈(accept、drop) iptables的特性:表、链、规则 2、五张表 五张表&a…

数据湖技术选型——Flink+Paimon 方向

文章目录 前言Apache Iceberg存储索引metadataFormat V2小文件 Delta LakeApache Hudi存储索引COWMOR元数据表 Apache PaimonLSMTagconsumerChangelogPartial Update 前言 对比读写性能和对流批一体的支持情况,建议选择Apache Paimon截止2024年1月12日数据湖四大开…

【计算机毕业设计】微信小程序:MHK自学平台的设计与实现——后附源码

🎉**欢迎来到我的技术世界!**🎉 📘 博主小档案: 一名来自世界500强的资深程序媛,毕业于国内知名985高校。 🔧 技术专长: 在深度学习任务中展现出卓越的能力,包括但不限于…

Swagger + SwaggerUI

用的是SpringBoot2、jdk11、<spring-boot.version>2.3.3.RELEASE</spring-boot.version> &#xff08;单纯的swagger还是不如knife界面好用好看&#xff09; 1.导入依赖 <dependency> <groupId>io.springfox</groupId> <art…

SpringBoot项目调用讯飞星火认知大模型

文章目录 注册讯飞星火平台&#xff0c;领取免费token引入SDKapplication.xml中进行配置config文件读取配置信息编写代码调用接口进行测试 官方文档&#xff1a; https://www.xfyun.cn/doc/spark/Web.html#_1-%E6%8E%A5%E5%8F%A3%E8%AF%B4%E6%98%8E 注册讯飞星火平台&#xff…

管道流设计模式结合业务

文章目录 流程图代码实现pomcontextEventContextBizTypeAbstractEventContext filterEventFilterAbstractEventFilterEventFilterChainFilterChainPipelineDefaultEventFilterChain selectorFilterSelectorDefaultFilterSelector 调用代码PipelineApplicationcontrollerentitys…

线上线下交友社区系统 可打包小程序 支持二开 源码交付!

社交网络的普及&#xff0c;人们交友的方式发生了巨大的变化。过去&#xff0c;我们主要通过线下的方式来结识新朋友&#xff0c;比如在学校、工作场所、社交活动或者兴趣小组中。然而&#xff0c;随着移动端软件的发展&#xff0c;线上交友也逐渐变得流行。 方便性&#xff1a…

FreeRTOS学习 -- 中断配置

一、什么是中断 中断时微控制器一个很常见的特性&#xff0c;中断是由硬件产生&#xff0c;当中断产生以后CPU就会中断当前的流程而去处理中断服务&#xff0c;Cortex-M内核的MCU提供了一个用于中断管理的嵌套向量中断控制器&#xff08;NVIC&#xff09;。 二、中断优先级分…

波士顿动力抛弃液压机器人Atlas,推出全新电动化机器人,动作超灵活

本周&#xff0c;机器人科技巨头波士顿动力宣布液压Atlas退役&#xff0c;并推出了下一代产品——专为实际应用而设计的全电动Atlas机器人&#xff0c;这也意味着人形机器人迈出了商业化的第一步。 Atlas——人形机器人鼻祖 Atlas&#xff08;阿特拉斯&#xff09;这个名字最…

为什么有的云渲染注册条件哪么多?有没有注册条件少的?

随着云渲染技术的普及&#xff0c;越来越多的设计师、艺术家和企业开始依赖这一强大的工具来加速创作过程。但是在我们注册账号的时候你会发现不同平台间的注册条件不同&#xff0c;一些平台在用户注册过程中设置了一系列繁琐的验证环节&#xff0c;让我们填那种无意义的数字或…

java体育馆使用预约平台的设计与实现(springboot+mysql源码+文档)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的体育馆使用预约平台。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 体育馆使用预约平台的…

ruoyi-nbcio-plus基于vue3的多租户机制

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 http://122.227.135.243:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a…

饮料市场迎来“营养革命”?2024年饮料行业销售数据分析已出炉

随着健康意识的日益增强&#xff0c;消费者对于饮料的需求已经不再是单纯追求口感和美味&#xff0c;而是更加关注产品的营养价值和健康属性。在这种背景下&#xff0c;上海市卫生健康委近期启动了“首批营养健康指导试点项目”&#xff0c;其中饮料“营养选择”分级标识试点的…

DFS专题:力扣岛屿问题(持续更新)

DFS专题&#xff1a;力扣岛屿问题 开篇 每次做到DFS相关的题目都是直接跳过。蓝桥杯过后痛定思痛&#xff0c;好好学习一下DFS和BFS。先从DFS开始吧。 参考题解&#xff1a;nettee&#xff1a;岛屿类问题的通用解法、DFS 遍历框架 题目链接&#xff1a; 200.岛屿数量    …

机器学习波士顿房价

流程 数据获取导入需要的包引入文件,查看内容划分训练集和测试集调用模型查看准确率 数据获取 链接&#xff1a;https://pan.baidu.com/s/1deECYRPQFx8h28BvoZcbWw?pwdft5a 提取码&#xff1a;ft5a --来自百度网盘超级会员V1的分享导入需要的包 import pandas as pd imp…

FreeRTOS之动态创建任务与删除任务

1.本文是利用FreeRTOS来动态创建任务和删除任务。主要是使用FreeRTOS的两个API函数&#xff1a;xTaskCreate()和vTaskDelete()。 任务1和任务2是让LED0、LED1闪烁。任务3是当按键按下时删除任务1。 使用动态创建任务时&#xff0c;需要动态的堆中申请任务所需的内存空间&…