Hugo是什么?
Hugo是由Go编写的快速现代静态网站生成器,旨在让网站创建变得有趣。
Hugo是一个通用的网站框架。从技术角度来说,Hugo是一个静态生成器。与每个访问者请求动态构建页面的系统不同,Hugo在创建或更新内容时构建页面。由于网站被查看的频率远远多于编辑的频率,Hugo旨在为您的网站最终用户提供最佳的查看体验,并为网站作者提供理想的编写体验。
使用Hugo构建的网站非常快速和安全。Hugo网站可以托管在任何地方,包括Netlify,Heroku,GoDaddy,DreamHost,GitHub Pages,GitLab Pages,Surge,Firebase,Google Cloud Storage,Amazon S3,Rackspace,Azure和CloudFront,并且与CDN配合良好。Hugo网站运行无需数据库或Ruby、Python或PHP等昂贵运行时的依赖。
环境准备
下载Hugo
- 官网址:Hugo官网
- Github地址:gohugoio/hugo
- 点击
Github
,点击Tags
,选择合适的版本下载。
下载git
- 点击Git官网https://cdn.jsdelivr.net/gh/Sazerac-kk/pictures/img/image1.png
- 点击 Download for Windows 按照指引安装即可。
搭建博客
创建博客
解压 hugo_extended_0.134.2_windows-amd64.zip
文件,里面包含一个 hugo.exe
可将其添加至环境变量..
点击进入并cmd打开命令行窗口,输入 hugo new site xxxx
创建文件
显示如下界面创建成功:
在命令行中切换到已创建好的 dev
文件夹,输入 hugo server -D
,运行成功出现以下界面:
打开浏览器输入 http://localhost:1313/
出现hugo即表示搭建成功
下载主题
在hugo官网中提供了很多主题demo和地址
挑选喜欢的主题,并且下载,本文主题选用的是hugo-theme-stack,通过github下载(或者git add submodule)
将文件解压存储在 dev\themes
文件下,并将 exampleSite
样例数据中的 Content
和 hugo.yaml
复制到主文件夹中,并删掉 hugo.toml
修改hugo.yaml配置文件,自定义页面配置等信息
此时运行 hugo server -D
并访问 localhost:1313
即可看见主题页面下的hugo网站
Github部署
这里演示的是通过Github Action自动部署的Github Page,也可通过push自己的public目录下静态文件来部署(只不过每次更新都需要重新hugo -D生成,比较麻烦)
- 准备工作:创建一个自己的github账号。
- 新建仓库,命名要用
{github用户名}.github.io
,如果这是你搭建的第一个博客,这一步最好在前面用自己的用户名,这会避免很多Bug(创建后不需要动了) - Github上面重新建一个仓库,可以任意命名,用于存放Hugo的主文件,可以设置为
private
- 前往
settings -> Developer Settings -> Personal access tokens
,创建一个token(classic)。 - token选择永不过期,并且勾选repo和workflow选项。
- 为保证安全,将生成的token,保存的仓库的变量中,前往
Settings -> Secrets and variables -> Actions
中设置。( 注意:token只能显示一次,可事先保存 )
- 在hugo主文件创建一个
.github/workflows/xxxx.yaml
文件,将以下内容复制进去,想具体了解更多,可查看【Github Action文档】。
|
|
- 在hugo主文件创建
.gitignore
文件,来避免提交不必要的文件
|
|
- 将hugo的主文件上传到仓库,上传成功后会触发Github Action,来自动部署你的静态页面
|
|
之后博客更新部署只需要修改好你的文档,直接 push 到你的仓库,不需要手动去部署
至此,已经成功搭建了一个简单的Github Pages博客,也是本站的部署方式~