有的小伙伴可能热爱写博客,但在选择平台时却受到规则限制,同时购买服务器和域名又显得成本过高。对于那些只想分享个人感悟和记录的小伙伴来说,这样的要求似乎过于严苛。然而,现在有一个零成本的选择摆在你面前:无需购买云主机或域名,只需利用静态网页生成器,你就能轻松搭建起自己的个人网站。
静态网页生成器是一种强大的工具,它能将预先设计好的模板、样式和内容数据融合,生成纯静态的HTML、CSS和JavaScript文件。这些文件可以部署在服务器上,或者通过GitHub Pages、CloudFlare等CDN托管平台进行托管。值得一提的是,CloudFlare作为全球知名的CDN供应商,提供了免费的Pages服务,且访问速度相当可观。
静态网页生成器具有诸多优势,如快速加载、高安全性、简单部署和易于缓存等。对于小型项目来说,如个人网站、博客或文档等,它无疑是一个轻量级且高效的选择。此外,常用的技术如Markdown、HTML、CSS、JavaScript以及模板引擎等,都为开发者提供了快速创建和维护网站的可能。
在众多静态网页生成器中,Jekyll、Hugo和Hexo等都是备受推崇的选项。它们各自拥有独特的功能、使用方式和生态系统,为开发者提供了多样化的选择。
功能:
Jekyll,这个基于Ruby的静态网页生成器,不仅支持Markdown和Liquid模板语言,还自带一套默认的目录结构和模板,让用户能迅速搭建起自己的网站。此外,它还支持插件和数据文件,从而实现了更丰富的功能。
使用方式:
在命令行的世界里,Jekyll大展身手。安装Ruby环境和相关依赖后,用户便能通过配置文件和模板来随心所欲地定制网站的布局和样式。
生态系统:
Jekyll的社区活跃,提供了无数主题和插件供用户选择。值得一提的是,它还是GitHub Pages的默认静态网页生成器,让用户能轻松将网站部署到GitHub上。
再来看Hugo,这个基于Go语言的静态网页生成器。它以速度见长,同时易于使用。Hugo同样支持Markdown和Go模板语言,并提供了多种主题和模板供用户选择。此外,它还拥有诸如多语言支持、分页、税onomies等丰富的内置功能。
使用方式上,Hugo也主要依赖命令行。安装Go语言环境后,用户便能通过配置文件和主题来自由定制网站的外观和功能。
生态系统方面,Hugo同样拥有活跃的社区和丰富的主题、插件选择。它还提供了详尽的文档和教程,为用户的学习和使用提供了便利。
而Hexo,这个基于Node.js的静态网页生成器,则以其对Markdown和EJS模板语言的支持脱颖而出。它提供了丰富的主题和插件,支持多语言、分页、标签等功能,并具备一些独特功能如自动生成目录、图片压缩和优化等。
使用上,Hexo同样依赖于命令行和Node.js环境。用户可以通过配置文件和主题来轻松定制网站的外观和功能。
生态系统上,Hexo也表现得相当活跃,提供了大量的主题和插件供用户选择。同时,详细的文档和教程也让用户的学习和使用变得更加简单易懂。
总体而言,Jekyll、Hugo和Hexo都是功能强大且易于操作的静态网页生成器。选择哪个生成器,往往取决于个人的偏好、技术背景以及项目的具体需求。例如,Jekyll更适合用于创建简单的个人网站和博客;Hugo则适合快速构建大型网站;而Hexo则更受技术背景较强的用户和有特殊需求的项目青睐。
接下来,让我们看看这些工具的安装方法。
对于Jekyll,你需要在命令行中安装Ruby环境及其相关依赖;对于Hugo,你需要安装Go语言环境;而Hexo则需要Node.js环境。安装完成后,你便可以通过配置文件和模板来自由定制网站的外观和功能。
现在,让我们以Hugo为例,创建一个简单的个人网站项目。首先,使用hugo new site pgwd命令创建一个新的Hugo项目。然后,进入项目目录并添加一个主题子模块。在这个例子中,我们添加了jane主题,它是Hugo的官方推荐主题之一。接下来,复制主题的示例内容和配置文件到你的项目中,并启动Hugo服务器进行预览。现在,你可以通过浏览器访问localhost:1313来查看你的网站了。
hugo v17-ea3c95a7b0f2140c248c1f40246a2e7acd2ada62+extended windows/amd64 BuildDate=2023-06-02T07:07:11Z VendorInfo=gohugoio
| EN | PT-BR
-------------------+----+--------
Pages | 11 | Paginator pages | 0 | Non-page files | 0 | Static files | 5 | Processed images | 0 | 0
Aliases | 1 | Sitemaps | 2 | Cleaned | 0 | Total build time in 81 ms
Monitoring changes in E:\Blogger\myblog\pgwd{archetypes,assets,content,data,layouts,static,themes}
Monitoring config changes in E:\Blogger\myblog\pgwd\hugo.toml
Current environment: "development"
Serving pages from memory
运行在快速渲染模式。若需在更改时进行完整重建,请使用命令:hugo server --disableFastRender。
按Ctrl+C可停止服务器。
现在,您可以在浏览器中输入[http://localhost:1313/来访问您的个人网站。但请注意,此网站仅限于本地访问。接下来,我们将探讨如何将其部署到互联网上,以便全球用户都能访问。

pwd
/e/Blogger/myblog/pgwd
git remote add origingit@github.com:你的账号名/pgwd.git
git add .
git commit -m "my website"
git push --set-upstream origin master
git branch -M main
git push -u origin main
接下来,部署到CloudFlare Pages。首先,注册一个CloudFlare账号(https://dash.cloudflare.com/login)。登录后,选择Works和Pages,然后按照提示进行部署即可。
选择Pages,并建立与Git的连接。
若无法查看到先前创建的仓库,请前往GitHub进行仓库权限的设置。

选择您刚刚创建的GitHub仓库,并点击【开始设置】按钮。
选择Hugo作为框架,并设置一个环境变量来指定Hugo的版本。建议与本地安装的版本保持一致,以便于问题排查。其他选项保持默认即可。同时,请确保选对分支,如master或main等。
网站构建完毕后,通过点击pgwd.pages.dev链接即可进行访问,请注意,这是CloudFlare自动分配的免费域名。
若无法访问,请返回至代码仓库,将baseURL更改为https://pgwd.pages.dev/。
git checkout master
在hugo.toml配置文件中,将baseURL更改为https://pgwd.pages.dev/,并保存更改。
执行git add .命令以添加所有更改。
使用git commit -m "modify base url"命令提交更改。
最后,执行git push将配置推送到仓库。
一旦配置推送到仓库,cloudflare pages将迅速感知到仓库内容的变更,并启动重新构建过程。
若需了解更多关于hugo的配置和使用详情,请访问其官网:https://gohugo.io/。
此外,还有数百种不同的hugo网站主题可供选择,以满足您的各种需求,详情请参阅:https://themes.gohugo.io/。