ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

GitHub Pages从入门到精通:零成本搭建个人静态网站全攻略

GitHub Pages从入门到精通:零成本搭建个人静态网站全攻略 1. 项目概述为什么选择GitHub Pages作为你的数字名片如果你是一名开发者、设计师、写作者或者任何一位希望在网上拥有一个专属角落的人你可能已经厌倦了在各种社交媒体平台间切换或者受限于第三方博客平台的模板和规则。你想拥有一个完全由自己掌控的、能展示你一切想法和成果的网站。这时GitHub Pages 几乎是为这个需求量身定制的完美解决方案。它不是一个需要你从零搭建服务器、配置复杂环境的庞然大物而是一个基于 Git 版本控制和 GitHub 仓库的、近乎零成本的静态网站托管服务。你可以把它想象成一个超级智能的“文件托管商”你只需要把写好的网页文件HTML, CSS, JavaScript推送到一个特定的 GitHub 仓库GitHub 就会自动为你生成一个可通过yourusername.github.io访问的网站。我最初接触 GitHub Pages 是为了写技术笔记后来用它搭建了个人博客、项目作品集甚至是一些小型工具文档站。它的魅力在于极简的流程和强大的自定义能力。你不需要关心服务器运维、SSL证书HTTPS是自动的且免费的、流量费用对于个人使用完全足够。整个核心就是“Git推送即发布”这与你作为开发者或内容创作者的工作流无缝衔接。无论是想展示一份精心设计的简历一个炫酷的项目案例一系列深度的技术文章还是一本你正在编写的开源电子书GitHub Pages 都能提供一个稳定、专业且免费的舞台。更重要的是这个过程本身就是你技术能力和项目管理能力的最佳证明。2. 核心思路与前期准备理清脉络事半功倍在动手敲下第一行代码之前花几分钟理清整个项目的脉络至关重要。GitHub Pages 的核心工作流可以概括为本地创作 - Git 管理 - 推送至 GitHub - 自动发布。为了实现这个流程我们需要准备好三样东西一个 GitHub 账号、一套本地的 Git 环境以及一个清晰的网站结构规划。很多人一上来就急着创建仓库、写代码结果发现本地环境没配好或者仓库名打错了导致页面无法访问又得推倒重来非常打击积极性。2.1 工具链准备Git与文本编辑器首先你需要一个 GitHub 账号这自不必说。其次你需要在你的电脑上安装 Git。Git 是一个分布式版本控制系统它是我们与 GitHub 通信的桥梁。很多新手会疑惑为什么不能直接在 GitHub 网页上操作当然可以但对于网站开发来说本地编辑、测试、再上传的效率远高于在线编辑。安装 Git 的过程很简单前往其官网下载对应操作系统的安装包一路“下一步”即可。安装完成后打开终端Windows 上是 Git Bash 或 CMD/PowerShellmacOS/Linux 是 Terminal通过输入git --version来验证是否安装成功。注意在 Windows 上安装 Git 时安装向导会询问如何配置终端。我强烈建议选择“Use Git from the Windows Command Prompt”或类似的选项这样你就可以在系统自带的 PowerShell 或 CMD 中使用 git 命令无需每次都打开专门的 Git Bash操作会更统一。接下来你需要一个顺手的文本编辑器或集成开发环境IDE来编写代码。对于纯静态网站HTML/CSS/JS轻量级的 VS Code 是绝佳选择它拥有丰富的插件生态如 Live Server 可以实时预览网页。如果你打算使用 Jekyll 等静态站点生成器那么确保你的编辑器支持相关语法高亮即可。2.2 核心概念解析仓库命名与访问规则这是最容易出错的一步必须理解清楚。GitHub Pages 的访问地址取决于你创建的仓库名称。用户或组织站点如果你想创建一个主站点例如https://yourusername.github.io你必须创建一个名为yourusername.github.io的仓库。这里的yourusername必须严格是你的 GitHub 用户名区分大小写。这个仓库里的内容将直接部署到你的根域名下。项目站点如果你想为某个特定的项目创建一个介绍页面例如https://yourusername.github.io/project-name你可以在任何仓库中开启 GitHub Pages 功能。通常网站内容会被部署到https://yourusername.github.io/仓库名。更常见的做法是使用该仓库下的docs文件夹或者gh-pages分支来存放网站文件。对于个人博客或简历网站我们毫无疑问要创建的是用户或组织站点。所以请牢记你的仓库名必须是用户名.github.io一字不差。在开始之前最好先浏览器访问一下这个地址如果显示 404说明名字可用如果显示别人的页面那你可能得检查一下用户名是否输对了。3. 从零到一创建并配置你的第一个页面理论准备就绪现在开始实战。我们将遵循最标准的流程创建一个最简单的站点来验证整个通路是畅通的。3.1 创建核心仓库登录 GitHub点击右上角 “” 图标选择 “New repository”。在 “Repository name” 输入框中严格按照你的用户名.github.io的格式填写。例如我的用户名是 “zhangsan”那么仓库名就是zhangsan.github.io。填写描述可选比如 “My personal blog and portfolio”。选择仓库可见性为 “Public”私有仓库也可以使用 GitHub Pages但有一些限制对于个人网站通常公开即可。强烈建议勾选 “Add a README file”。这会初始化仓库并创建一个README.md文件我们可以直接在此基础上修改。同时这也能避免你创建一个空仓库对于新手来说更友好。点击 “Create repository”。至此你的专属网站“地基”已经打好了。这个仓库将直接关联到https://你的用户名.github.io。3.2 编写你的第一个HTML文件现在我们需要向这个仓库添加内容。我们将创建一个最基础的index.html文件它是网站的默认首页。你可以直接在 GitHub 网页上操作进入刚创建的仓库点击 “Add file” - “Create new file”。在文件名输入框键入index.html。在编辑区输入以下最基础的 HTML 代码!DOCTYPE html html langen head meta charsetUTF-8 meta nameviewport contentwidthdevice-width, initial-scale1.0 titleWelcome to My Space/title style body { font-family: Arial, sans-serif; line-height: 1.6; margin: 40px auto; max-width: 800px; padding: 20px; background-color: #f4f4f4; color: #333; } h1 { color: #2c3e50; } a { color: #3498db; text-decoration: none; } a:hover { text-decoration: underline; } /style /head body header h1Hello, World! /h1 pThis is my personal site hosted on strongGitHub Pages/strong./p /header main pIm [Your Name], a passionate [Your Profession]. This site is under construction, but great things are coming soon!/p pYou can find my projects on a hrefhttps://github.com/yourusernameGitHub/a./p /main footer p© span idcurrent-year/span [Your Name]. Powered by GitHub Pages./p /footer script // 简单的脚本自动更新年份 document.getElementById(current-year).textContent new Date().getFullYear(); /script /body /html滚动到页面底部填写一个简短的提交描述例如 “Create initial index.html”然后点击 “Commit new file”。3.3 触发部署与首次访问GitHub Pages 的部署是自动触发的。当你将文件推送到仓库的默认分支通常是main或master后GitHub Actions 会在后台开始构建和部署流程。这个过程通常需要几十秒到一两分钟。等待片刻后打开浏览器访问https://你的用户名.github.io。你应该能看到刚刚创建的页面了如果显示 “404” 或者 “There isn‘t a GitHub Pages site here.”请耐心等待1-2分钟再刷新或者去仓库的 “Settings” - “Pages” 页面查看部署状态。如果状态是 “Your site is published at...”但依然无法访问可能是浏览器缓存尝试强制刷新CtrlF5或使用隐身模式。实操心得第一次访问失败别慌张这是最常见的“新手村”考验。除了等待一定要去仓库的 “Settings” - “Pages” 页面看看。这里会明确告诉你源分支是哪个比如main分支的/root目录以及提供的访问地址。如果这里都没有配置信息说明你的仓库名可能不符合用户名.github.io的规则。4. 本地开发环境搭建与高效工作流在网页上直接编辑代码效率太低且无法实时预览。建立本地开发环境是提升体验和效率的关键一步。这意味着我们要把远程的 GitHub 仓库“克隆”到本地电脑上在本地修改、测试满意后再同步回 GitHub。4.1 克隆仓库到本地首先打开终端切换到你希望存放项目的目录例如cd ~/Documents。然后使用git clone命令克隆你的仓库。你可以在 GitHub 仓库页面上找到仓库的 HTTPS 或 SSH 地址。# 使用 HTTPS推荐新手 git clone https://github.com/yourusername/yourusername.github.io.git # 或者使用 SSH需先配置SSH密钥速度更快更安全 # git clone gitgithub.com:yourusername/yourusername.github.io.git命令执行后当前目录下会生成一个yourusername.github.io的文件夹里面就是仓库的所有文件目前只有README.md和index.html。4.2 配置本地Git身份在开始提交代码前需要先告诉 Git 你是谁这样你提交的记录才会带有正确的作者信息。# 进入项目目录 cd yourusername.github.io # 设置用户名和邮箱请替换成你自己的 git config user.name Your Name git config user.email your.emailexample.com # 如果想设置为全局配置对所有仓库生效加上 --global 参数 # git config --global user.name Your Name # git config --global user.email your.emailexample.com4.3 掌握核心Git工作流本地开发的核心循环是修改 - 保存 - 添加至暂存区 - 提交 - 推送。修改文件用 VS Code 或其他编辑器打开项目文件夹修改index.html或者创建新的文件如about.html、style.css等。查看状态在终端中随时可以使用git status查看哪些文件被修改了、新增了或删除了。添加至暂存区将想要提交的更改“暂存”起来。# 添加单个文件 git add index.html # 添加当前目录下所有更改 git add .提交更改为本次更改创建一个快照提交。git commit -m Add about page and update styles-m后面的信息是提交说明务必清晰简洁说明这次提交做了什么。推送到远程仓库将本地的提交同步到 GitHub 上触发 Pages 重新部署。git push origin mainorigin是远程仓库的默认别名main是你的分支名早期可能是master。完成git push后等待一两分钟刷新你的网站就能看到更新了。这个修改 - add - commit - push的循环就是你日后更新网站的标准操作。注意事项在git add .之前建议先用git status确认一下避免把一些临时文件如.DS_Store、node_modules等或敏感信息如配置文件中的密码添加进去。可以通过创建.gitignore文件来永久忽略这些文件。5. 进阶美化引入CSS、JavaScript与多页面一个只有文字的页面显然不够。让我们为网站添加样式、交互并扩展成多页面结构。5.1 结构化项目目录一个清晰的项目结构能让后期维护变得轻松。建议创建如下目录yourusername.github.io/ ├── index.html # 首页 ├── about.html # 关于我页面 ├── blog/ # 博客目录 │ ├── index.html # 博客列表页 │ └── first-post.html # 第一篇博客文章 ├── css/ # 样式表目录 │ └── style.css ├── js/ # JavaScript脚本目录 │ └── main.js ├── images/ # 图片资源目录 │ └── avatar.jpg └── README.md你可以在终端中使用mkdir命令创建文件夹用touch命令创建空文件Windows 下可用type nul filename或直接在编辑器中创建。5.2 编写独立的CSS和JavaScript在css/style.css中编写样式让样式与结构分离/* css/style.css */ :root { --primary-color: #3498db; --secondary-color: #2c3e50; --background-color: #f8f9fa; --text-color: #333; } body { font-family: Segoe UI, Tahoma, Geneva, Verdana, sans-serif; background-color: var(--background-color); color: var(--text-color); margin: 0; padding: 0; line-height: 1.7; } .container { width: 90%; max-width: 1000px; margin: 0 auto; padding: 20px; } header { background: linear-gradient(135deg, var(--secondary-color), #1a252f); color: white; padding: 4rem 0; text-align: center; margin-bottom: 2rem; } nav { background-color: white; box-shadow: 0 2px 5px rgba(0,0,0,0.1); position: sticky; top: 0; z-index: 1000; } nav ul { list-style: none; padding: 0; margin: 0; display: flex; justify-content: center; } nav li { margin: 0 15px; } nav a { display: block; padding: 1rem; color: var(--secondary-color); font-weight: bold; text-decoration: none; transition: color 0.3s; } nav a:hover { color: var(--primary-color); }在js/main.js中添加一些交互比如一个简单的“返回顶部”按钮// js/main.js document.addEventListener(DOMContentLoaded, function() { // 创建“返回顶部”按钮 const backToTopButton document.createElement(button); backToTopButton.innerHTML ↑; backToTopButton.id back-to-top; backToTopButton.style.cssText position: fixed; bottom: 30px; right: 30px; width: 50px; height: 50px; border-radius: 50%; background-color: var(--primary-color, #3498db); color: white; border: none; font-size: 1.5rem; cursor: pointer; opacity: 0; transition: opacity 0.3s; z-index: 1000; ; document.body.appendChild(backToTopButton); // 滚动显示/隐藏按钮 window.addEventListener(scroll, function() { if (window.scrollY 300) { backToTopButton.style.opacity 1; } else { backToTopButton.style.opacity 0; } }); // 点击滚动到顶部 backToTopButton.addEventListener(click, function() { window.scrollTo({ top: 0, behavior: smooth }); }); console.log(Site JS loaded successfully!); });5.3 在HTML中引入资源并构建导航更新index.html的head和body部分引入外部资源并添加公共导航栏。!-- 在 head 中引入CSS -- link relstylesheet href/css/style.css !-- 在 body 开头添加导航栏 -- body nav div classcontainer ul lia href/Home/a/li lia href/about.htmlAbout/a/li lia href/blog/Blog/a/li lia hrefhttps://github.com/yourusernameGitHub/a/li /ul /div /nav header !-- ... 原有的header内容 ... -- /header !-- ... 原有的main内容 ... -- !-- 在 body 末尾引入JS -- script src/js/main.js/script /body注意我们使用了以/开头的绝对路径如/css/style.css。这在 GitHub Pages 的根域名下工作得很好能确保无论页面在哪个子目录下都能正确找到资源文件。按照同样的模式创建about.html和blog/index.html并复用相同的导航栏和资源引入方式一个具有统一风格的多页面网站骨架就搭建起来了。6. 使用Jekyll静态站点生成器提升效率手动编写每一个HTML文件维护统一的导航栏和页脚当文章数量增多时会变得异常繁琐。这时静态站点生成器Static Site Generator, SSG就成了救星。GitHub Pages 原生支持Jekyll这是一个用 Ruby 编写的强大 SSG。它允许你使用模板Layouts、包含文件Includes、Markdown 写文章然后自动生成完整的静态网站。6.1 启用Jekyll支持启用 Jekyll 非常简单几乎不需要额外配置。你只需要按照特定的目录结构组织文件GitHub Pages 在构建时会自动识别并使用 Jekyll 处理。一个基础的 Jekyll 项目结构如下. ├── _config.yml # 网站配置文件 ├── _layouts/ # 布局模板目录 │ └── default.html # 默认布局 ├── _includes/ # 可复用的组件目录 │ ├── head.html │ ├── header.html │ └── footer.html ├── _posts/ # 博客文章目录必须 │ └── 2024-05-20-welcome-to-jekyll.md ├── _site/ # Jekyll生成的静态文件通常被.gitignore忽略 ├── about.md # “关于”页面 ├── index.md # 首页 └── assets/ # 资源文件css, js, images ├── css/ └── js/关键文件说明_config.yml 站点的“大脑”在这里定义网站标题、描述、URL、主题等全局设置。_layouts/default.html 定义页面的基本骨架通常包含html,head,body结构并使用{{ content }}来注入具体页面的内容。_includes/ 存放像导航栏、页脚、侧边栏等可复用的 HTML 片段。_posts/博客文章必须放在这个目录下且文件名必须遵循YYYY-MM-DD-title.md的格式。Jekyll 会自动解析这些 Markdown 文件并为它们生成对应的文章页面。6.2 创建配置文件与布局首先在项目根目录创建_config.yml# _config.yml title: 张三的个人空间 description: 记录思考分享创造。 baseurl: # 如果你的网站不在根目录比如在/blog子目录下这里填/blog url: https://yourusername.github.io # 你的网站地址 # 构建设置 markdown: kramdown plugins: - jekyll-feed # 可选生成RSS订阅 - jekyll-seo-tag # 可选优化SEO # 自定义变量 author: Your Name github_username: yourusername然后创建_layouts/default.html!DOCTYPE html html langen head meta charsetUTF-8 meta nameviewport contentwidthdevice-width, initial-scale1.0 title{{ page.title }} | {{ site.title }}/title link relstylesheet href{{ /assets/css/style.css | relative_url }} /head body {% include header.html %} main classcontainer {{ content }} /main {% include footer.html %} script src{{ /assets/js/main.js | relative_url }}/script /body /html创建_includes/header.htmlheader h1a href{{ / | relative_url }}{{ site.title }}/a/h1 p{{ site.description }}/p nav a href{{ / | relative_url }}Home/a | a href{{ /about | relative_url }}About/a | a href{{ /blog | relative_url }}Blog/a /nav /header6.3 用Markdown撰写博客文章现在你可以在_posts/目录下用 Markdown 轻松写博客了。创建文件_posts/2024-05-20-my-first-jekyll-post.md--- layout: post title: 我的第一篇Jekyll博客 date: 2024-05-20 14:30:00 0800 categories: [随笔, 技术] --- ## 欢迎 这是我的第一篇使用 Jekyll 和 GitHub Pages 发布的博客。 使用 Markdown 写作真是太方便了 - 列表项一 - 列表项二 python # 甚至支持代码高亮 print(Hello, Jekyll!)文章前面的---之间的部分叫做Front Matter是 Jekyll 用来获取页面元数据的。layout: post指定了使用_layouts/post.html模板你可以基于default.html创建一个title、date、categories都是自定义的变量可以在模板中使用{{ page.title }}来调用。当你将这样的项目结构推送到 GitHub 后GitHub Pages 会自动运行 Jekyll 构建将你的 Markdown 文章、模板和资源文件组合成完整的静态网站。你无需手动管理每个页面的导航和页脚一切皆由模板驱动。7. 自定义域名、主题与高级配置当基本站点运行起来后你可能希望它看起来更专业或者拥有一个属于自己的独立域名。7.1 绑定自定义域名使用yourusername.github.io的域名很酷但一个自定义域名如www.yourname.com更能彰显专业性和个人品牌。购买域名在域名注册商如 Namecheap, GoDaddy, 阿里云等购买一个你喜欢的域名。配置DNS记录在你的域名管理后台添加以下两条CNAME记录以Cloudflare为例其他服务商类似类型CNAME 名称www 内容yourusername.github.io. 注意末尾的点类型A 名称 (或留空代表根域名) 内容185.199.108.153这是GitHub Pages的IP实际上有多个通常需要添加4条A记录指向不同的IP185.199.108.153,185.199.109.153,185.199.110.153,185.199.111.153以确保高可用性。具体请查阅GitHub官方文档的最新IP地址。在仓库中设置在你的 GitHub 仓库的 “Settings” - “Pages” 页面找到 “Custom domain” 栏输入你购买的自定义域名如www.yourname.com然后点击 “Save”。创建CNAME文件可选但推荐GitHub 可能会自动在仓库根目录创建一个名为CNAME的文件里面只有一行你的域名。如果没有你可以手动创建这个文件并提交到仓库。这能确保域名绑定在仓库中也有记录。等待生效DNS 记录生效需要时间通常几分钟到几小时不等。生效后访问你的自定义域名就会看到 GitHub Pages 上的内容了。重要提示绑定自定义域名后强烈建议在_config.yml中同步更新url字段为你的新域名如url: https://www.yourname.com并确保网站内部链接使用{{ ‘/path‘ | relative_url }}或{{ ‘/path‘ | absolute_url }}这样的 Liquid 过滤器以保证链接在所有环境下都能正确工作。7.2 应用Jekyll主题从头设计CSS很耗时Jekyll 社区有大量开源、免费的主题可供选择。使用主题能快速获得一个美观、响应式的网站。寻找主题访问 Jekyll Themes 或 GitHub 上搜索 “jekyll theme”。使用主题通常有两种方式Fork主题仓库很多主题本身就是一个完整的 Jekyll 站点仓库。你可以直接 Fork 它然后将其重命名为yourusername.github.io再替换里面的内容为你自己的。作为Gem安装高级一些主题被打包成 Ruby Gem。你需要在_config.yml中指定theme: theme-name并在Gemfile中添加依赖。这种方式更便于更新主题但需要本地安装 Ruby 和 Bundler 环境进行测试。自定义主题即使是使用现成主题你也完全可以修改它的_config.yml、CSS 文件、布局文件来调整颜色、字体、布局等使其更符合你的个性。7.3 利用GitHub Actions实现自动化与CI/CDGitHub Pages 的自动构建已经很强大了但有时你可能需要更复杂的构建流程比如使用其他静态生成器Hugo, Hexo, VuePress等或者在构建前进行代码检查、压缩图片等。这时你可以使用 GitHub Actions 来自定义构建和部署流程。本质上你是在告诉 GitHub“别用你默认的 Jekyll 构建了按我这个工作流来。” 你需要在仓库根目录创建.github/workflows/deploy.yml文件。一个使用 Hugo 生成器的简单工作流示例name: Deploy Hugo site to Pages on: push: branches: [ main ] # 在推送到main分支时触发 workflow_dispatch: # 允许手动触发 permissions: contents: read pages: write id-token: write concurrency: group: pages cancel-in-progress: false defaults: run: shell: bash jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkoutv4 with: submodules: recursive # 如果主题是子模块需要这个 fetch-depth: 0 - name: Setup Hugo uses: peaceiris/actions-hugov2 with: hugo-version: latest extended: true - name: Build with Hugo run: hugo --minify - name: Upload artifact uses: actions/upload-pages-artifactv3 with: path: ./public # Hugo默认的输出目录 deploy: environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: build steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pagesv4这个工作流会在每次推送代码时自动在一个干净的 Ubuntu 环境中安装 Hugo构建网站然后将生成的public文件夹部署到 GitHub Pages。通过这种方式你可以完全控制构建环境使用任何你喜欢的静态站点生成器。8. 常见问题、排查技巧与优化建议在搭建和维护 GitHub Pages 的过程中你一定会遇到各种各样的问题。下面是我总结的一些常见“坑”及其解决方案。8.1 部署失败与页面404这是最常见的问题。请按以下顺序排查检查仓库名称用户站点仓库名必须是用户名.github.io且用户名大小写正确。检查源分支/目录进入仓库 Settings - Pages确认 “Source” 设置正确。对于最简单的项目通常是main分支的/ (root)目录。如果使用docs/文件夹或gh-pages分支也要确保文件在正确位置。查看构建状态在仓库的 “Actions” 标签页可以看到最近的工作流运行记录。如果构建失败红色叉号点击进去查看详细日志错误信息通常会非常明确比如 Jekyll 插件不兼容、Markdown 语法错误、_config.yml格式错误等。强制使用 HTTPSSettings - Pages 中确保 “Enforce HTTPS” 是勾选状态。有时浏览器缓存了 HTTP 版本会导致问题。清除浏览器缓存使用 CtrlShiftRWindows/Linux或 CmdShiftRMac强制刷新或使用隐身模式访问。等待时间首次部署或重大更改后可能需要 1-3 分钟才能生效。请耐心等待。8.2 Jekyll构建相关问题本地无法运行Jekyll你需要安装 Ruby 和 Jekyll 环境。对于 macOS 和 Linux 相对简单Windows 用户可能会遇到更多挑战。一个更简单的方法是只在本地编写 Markdown 和模板依赖 GitHub 的在线构建。你可以在本地用git add,commit,push后去 GitHub Actions 看构建日志来调试。插件不被支持GitHub Pages 为了安全只支持 一部分白名单内的 Jekyll 插件 。如果你在_config.yml中配置了非白名单插件在线构建会失败。解决方案要么移除该插件要么改用 GitHub Actions 自定义构建流程在 Actions 中安装并使用该插件。Front Matter格式错误确保文章头部的---是单独的一行且没有语法错误如冒号后没空格。YAML 对格式非常敏感。8.3 自定义域名问题域名解析不生效使用dig或nslookup命令检查你的域名 DNS 记录是否已正确指向 GitHub 的 IP。注意 DNS 传播可能需要时间。HTTPS证书错误GitHub Pages 会自动为你的自定义域名申请 Let‘s Encrypt 证书但这需要时间可能长达24小时。在此期间访问 HTTPS 版本可能会报错。确保在仓库 Settings - Pages 中已正确配置自定义域名并勾选了 “Enforce HTTPS”。CNAME文件丢失如果你在仓库设置中删除了自定义域名或者仓库中不存在CNAME文件绑定可能会失效。确保CNAME文件存在于仓库根目录。8.4 性能与SEO优化建议图片优化大图片是网站加载慢的元凶。务必在使用前用工具如 TinyPNG, Squoosh压缩图片。对于图标优先使用 SVG 格式。使用CDN加速资源可以将 CSS、JS 库如 jQuery, Bootstrap的链接替换为公共 CDN 地址如 cdnjs, jsDelivr加快加载速度。启用Jekyll SEO Tag插件在_config.yml中启用jekyll-seo-tag插件并在_layouts/default.html的head中添加{% seo %}它可以自动为你的页面生成更友好的 meta 标签利于搜索引擎收录。创建sitemap.xml虽然 Jekyll 有一些插件可以生成但手动创建一个简单的sitemap.xml放在根目录列出所有重要页面的 URL有助于搜索引擎爬取。保持更新无论是你使用的 Jekyll 主题还是自定义的构建脚本定期检查并更新依赖可以修复安全漏洞并获得性能改进。搭建 GitHub Pages 的过程是一个极佳的学习路径。你不仅获得了一个免费、稳定的个人网站更在实践中深入理解了 Git 工作流、静态网站原理、前端基础甚至接触到了 CI/CD 和自动化部署的概念。从今天开始用代码构建你的数字家园让每一次git push都成为你向世界展示的一小步。
返回列表