<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Cloudflare | ForeverYang's 博客</title><link>https://blog.foreveryang.top/blog/cloudflare/</link><description>ForeverYang's 博客 中「Cloudflare」的最新内容</description><generator>Hugo</generator><language>zh-cn</language><managingEditor>mythstraw@msn.com (ForeverYang)</managingEditor><webMaster>mythstraw@msn.com (ForeverYang)</webMaster><copyright>Copyright © 2026, ForeverYang</copyright><lastBuildDate>Sun, 27 Sep 2026 17:50:00 +0800</lastBuildDate><atom:link href="https://blog.foreveryang.top/blog/cloudflare/index.xml" rel="self" type="application/rss+xml"/><item><title>GitHub 部署自己的个人博客网站</title><link>https://blog.foreveryang.top/p/github-deploy-personal-blog/</link><pubDate>Sun, 27 Sep 2026 17:50:00 +0800</pubDate><author>mythstraw@msn.com (ForeverYang)</author><guid>https://blog.foreveryang.top/p/github-deploy-personal-blog/</guid><description>&lt;p&gt;&lt;em&gt;在这个 AI 时代，知识库成了最火的项目。AI 需要知识库来提升专业度，人类需要知识库辅助学习和记忆。但有一个问题是：互联网上有什么是可以永久留存的呢？所有的服务都会随着运营商的倒闭而面临关闭，你用来保存知识库的载体也会随着消失。而目前来看，唯一能够长久存在可能也就只有这个全球最大的仓库 GitHub 了，所以把知识放在 GitHub 上成了很多人的首选方案。&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;想要了解整个详细流程，可以查看 &lt;a href="https://blog.foreveryang.top/p/hugo-github-deploy/"&gt;使用 Hugo + GitHub 部署博客&lt;/a&gt;
 这个详细的文档。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="使用的技术"&gt;使用的技术&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hugo&lt;/strong&gt;：静态 blog 网站工具&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Git&lt;/strong&gt; 工具&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub&lt;/strong&gt; 仓库&lt;/li&gt;
&lt;li&gt;AI 工具：&lt;strong&gt;nanobot&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloudflare&lt;/strong&gt; 部署&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub 自定义域名&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="简化的流程说明ai-自动操作"&gt;简化的流程说明（AI 自动操作）&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;本地环境搭建&lt;/strong&gt;：安装 Hugo 和 Git。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;创建与配置站点&lt;/strong&gt;：初始化 Hugo 站点，选择并配置主题样式。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;编写与预览内容&lt;/strong&gt;：用 Markdown 写文章，本地启动服务预览。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;连接 GitHub 并自动化部署&lt;/strong&gt;：将代码推送到 GitHub，配置 Actions 自动构建和发布。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="修改美化-hugo-blog"&gt;修改美化 Hugo Blog&lt;/h2&gt;
&lt;p&gt;先了解一下 Hugo 的整体框架，了解了框架才能知道 AI 改了哪些东西。使用不同的主题，架构可能有一些不同，我们只要了解基础架构，细节就交给 AI 自己去学习。&lt;/p&gt;
&lt;p&gt;&lt;figure
 class="image-caption image-zoom-container"
&gt;
 
 &lt;input
 type="checkbox"
 id="img-8cf948ce"
 class="image-zoom-toggle"
 aria-label="放大图片：Hugo 站点的目录结构"
 /&gt;
 &lt;label
 for="img-8cf948ce"
 class="image-zoom-label"
 &gt;
 &lt;img
 src="https://blog.foreveryang.top/img/blog-github-deploy/hugo-structure.png"
 alt="Hugo 站点的目录结构"
 loading="lazy"
 class="zoomable-image"
 /&gt;
 &lt;/label&gt;
 
 &lt;label
 for="img-8cf948ce"
 class="image-zoom-overlay"
 &gt;
 &lt;img
 src="https://blog.foreveryang.top/img/blog-github-deploy/hugo-structure.png"
 alt="Hugo 站点的目录结构"
 class="zoomable-image"
 /&gt;
 &lt;/label&gt;
 
 &lt;figcaption&gt;Hugo 站点的目录结构&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 id="-核心内容与模板你需要经常编辑的"&gt;📁 核心内容与模板（你需要经常编辑的）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;content/&lt;/code&gt;&lt;/strong&gt;：存放你的博客文章。所有的 Markdown 文件（如 &lt;code&gt;posts/my-first-post.md&lt;/code&gt;）都在这里。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;layouts/&lt;/code&gt;&lt;/strong&gt;：存放自定义的 HTML 模板。当你需要覆盖主题的页面结构（如修改页脚、首页样式）时，把主题里的文件复制到这里修改。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;static/&lt;/code&gt;&lt;/strong&gt;：存放不需要 Hugo 处理的静态文件。比如自定义的 CSS、JS、图片、favicon 等，Hugo 会原样复制到最终的 &lt;code&gt;public/&lt;/code&gt; 目录。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;assets/&lt;/code&gt;&lt;/strong&gt;：存放需要 Hugo 处理（如压缩、编译 SCSS）的文件。通常由主题使用，你也可以在这里放需要打包的 CSS/JS。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;archetypes/&lt;/code&gt;&lt;/strong&gt;：存放内容模板（原型）。当你执行 &lt;code&gt;hugo new posts/xxx.md&lt;/code&gt; 时，Hugo 会以此处的模板生成文章的初始 Front Matter。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;data/&lt;/code&gt;&lt;/strong&gt;：存放数据文件（JSON/YAML/TOML），供模板调用，常用于生成列表或配置信息。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;i18n/&lt;/code&gt;&lt;/strong&gt;：存放多语言翻译文件。如果你的博客是中文，这里可能主要用于覆盖主题的默认语言字符串。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-hugo-配置与构建自动生成或较少改动"&gt;⚙️ Hugo 配置与构建（自动生成或较少改动）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;themes/&lt;/code&gt;&lt;/strong&gt;：存放你安装的 Hugo 主题（如 PaperMod 或 BearNeo）。&lt;strong&gt;建议永远不要直接修改这个文件夹内的文件&lt;/strong&gt;，以免更新主题时被覆盖。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;hugo.yaml&lt;/code&gt;&lt;/strong&gt;：Hugo 站点的&lt;strong&gt;主配置文件&lt;/strong&gt;。你的站点标题、baseURL、菜单、主题参数都在这里设置。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;public/&lt;/code&gt;&lt;/strong&gt;：Hugo 构建后生成的&lt;strong&gt;静态网站最终输出目录&lt;/strong&gt;。部署时，GitHub Actions 或 Cloudflare 实际上就是把这里的文件发布出去。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;resources/&lt;/code&gt;&lt;/strong&gt;：Hugo 的缓存目录。存放图片处理、SCSS 编译等生成的中间文件。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;.hugo_build.lock&lt;/code&gt;&lt;/strong&gt;：Hugo 构建时的锁文件，防止多个构建任务同时修改文件。通常不需要管它，会自动生成。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-版本控制与自动化git-相关"&gt;🔀 版本控制与自动化（Git 相关）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;.git/&lt;/code&gt;&lt;/strong&gt;：Git 的本地仓库数据。不要手动修改里面的文件。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;.github/&lt;/code&gt;&lt;/strong&gt;：存放 GitHub Actions 工作流。里面有 &lt;code&gt;workflows/hugo.yaml&lt;/code&gt;，是你推送到 GitHub 后自动部署到 GitHub Pages 的配置文件。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;.gitignore&lt;/code&gt;&lt;/strong&gt;：告诉 Git 哪些文件和文件夹不需要上传（例如 &lt;code&gt;public/&lt;/code&gt;、&lt;code&gt;resources/&lt;/code&gt;、&lt;code&gt;.hugo_build.lock&lt;/code&gt; 通常会被忽略）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;.gitmodules&lt;/code&gt;&lt;/strong&gt;：如果你用 &lt;code&gt;git submodule&lt;/code&gt; 安装了主题，这个文件记录了主题的仓库地址。由于你用了主题，这个文件很重要，需要在部署时用 &lt;code&gt;submodules: recursive&lt;/code&gt; 拉取。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-部署与托管cloudflare-与-github-pages"&gt;☁️ 部署与托管（Cloudflare 与 GitHub Pages）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;.wrangler/&lt;/code&gt;&lt;/strong&gt;：Cloudflare Wrangler CLI 的本地缓存目录。通常不需要手动修改。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;wrangler.jsonc&lt;/code&gt;&lt;/strong&gt;：Cloudflare Workers 的配置文件。告诉 Cloudflare 项目名称、构建命令（&lt;code&gt;hugo build --gc --minify&lt;/code&gt;）以及静态资源目录（&lt;code&gt;./public&lt;/code&gt;）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;CNAME&lt;/code&gt;&lt;/strong&gt;：用于 GitHub Pages 绑定自定义域名的文件（通常包含你的域名）。如果你同时部署到了 Cloudflare 和 GitHub，这个文件会指定 GitHub Pages 的访问域名。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;你只要知道这些文件是干什么的、修改的东西要到哪里去查看就可以了，至于操作的事情交给 AI。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure
 class="image-caption image-zoom-container"
&gt;
 
 &lt;input
 type="checkbox"
 id="img-bcd3441e"
 class="image-zoom-toggle"
 aria-label="放大图片：BearNeo 主题里，每一个导航就是一个 Markdown 文档"
 /&gt;
 &lt;label
 for="img-bcd3441e"
 class="image-zoom-label"
 &gt;
 &lt;img
 src="https://blog.foreveryang.top/img/blog-github-deploy/bearneo-nav.png"
 alt="BearNeo 主题里，每一个导航就是一个 Markdown 文档"
 loading="lazy"
 class="zoomable-image"
 /&gt;
 &lt;/label&gt;
 
 &lt;label
 for="img-bcd3441e"
 class="image-zoom-overlay"
 &gt;
 &lt;img
 src="https://blog.foreveryang.top/img/blog-github-deploy/bearneo-nav.png"
 alt="BearNeo 主题里，每一个导航就是一个 Markdown 文档"
 class="zoomable-image"
 /&gt;
 &lt;/label&gt;
 
 &lt;figcaption&gt;BearNeo 主题里，每一个导航就是一个 Markdown 文档&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;我使用的主题是 BearNeo，它是一个极简的主题，每一个导航其实就是一个 MD 文档，你也可以自己去打开文档去编辑内容。&lt;/p&gt;
&lt;p&gt;&lt;figure
 class="image-caption image-zoom-container"
&gt;
 
 &lt;input
 type="checkbox"
 id="img-d2370f3c"
 class="image-zoom-toggle"
 aria-label="放大图片：Hugo 的 HTML 模板文件"
 /&gt;
 &lt;label
 for="img-d2370f3c"
 class="image-zoom-label"
 &gt;
 &lt;img
 src="https://blog.foreveryang.top/img/blog-github-deploy/html-template.png"
 alt="Hugo 的 HTML 模板文件"
 loading="lazy"
 class="zoomable-image"
 /&gt;
 &lt;/label&gt;
 
 &lt;label
 for="img-d2370f3c"
 class="image-zoom-overlay"
 &gt;
 &lt;img
 src="https://blog.foreveryang.top/img/blog-github-deploy/html-template.png"
 alt="Hugo 的 HTML 模板文件"
 class="zoomable-image"
 /&gt;
 &lt;/label&gt;
 
 &lt;figcaption&gt;Hugo 的 HTML 模板文件&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;如果想要做很大的样式上的修改，那就需要去改 HTML 模板了，当然你也可以让 AI 去修改。&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="cloudflare-部署了解一下国内访问有限制"&gt;Cloudflare 部署（了解一下，国内访问有限制）&lt;/h2&gt;
&lt;p&gt;Cloudflare 有两种部署方式 pages 和 workers，现在 Cloudflare 开始转向 workers，pages 现在是停止维护但是仍然可以使用的状态。&lt;/p&gt;
&lt;p&gt;这里主要说明 workers 的部署过程。&lt;/p&gt;
&lt;h3 id="选-workers具体设置"&gt;选 Workers：具体设置&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;① 仓库里新增 &lt;code&gt;wrangler.jsonc&lt;/code&gt;&lt;/strong&gt;（这是唯一的仓库改动，AI 会帮你自动完成）&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;$schema&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;./node_modules/wrangler/config-schema.json&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;foreveryang-blog&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;compatibility_date&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;2026-09-27&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;assets&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;directory&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;./public&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;not_found_handling&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;404-page&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;name&lt;/code&gt; 必须和控制台里的 Worker 名&lt;strong&gt;完全一致&lt;/strong&gt;，否则构建直接失败（官方明确警告）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;compatibility_date&lt;/code&gt; 填你创建那天的日期。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;not_found_handling&lt;/code&gt; 默认是 &lt;code&gt;&amp;quot;none&amp;quot;&lt;/code&gt;（不存在路径只给一句 404）→ 必须写成 &lt;code&gt;&amp;quot;404-page&amp;quot;&lt;/code&gt;，才会用你 &lt;code&gt;404.html&lt;/code&gt; 生成的那个自定义 404 页。&lt;strong&gt;Pages 会自动探测 &lt;code&gt;404.html&lt;/code&gt;，Workers 不会&lt;/strong&gt;，这是从 Pages 思路切过来最容易漏的一项。&lt;/li&gt;
&lt;li&gt;不用写 &lt;code&gt;html_handling&lt;/code&gt;，默认 &lt;code&gt;auto-trailing-slash&lt;/code&gt; 正好适配 Hugo 的 &lt;code&gt;/p/slug/&lt;/code&gt; 这种漂亮 URL。&lt;/li&gt;
&lt;li&gt;纯静态、没有 Worker 脚本 → &lt;strong&gt;不要&lt;/strong&gt;写 &lt;code&gt;&amp;quot;binding&amp;quot;: &amp;quot;ASSETS&amp;quot;&lt;/code&gt;（那是配合 &lt;code&gt;main&lt;/code&gt; 用的）。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;② 控制台（Workers &amp;amp; Pages → Create application → Continue with GitHub）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;接下来的流程：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Continue with GitHub&lt;/strong&gt; → 弹 GitHub 授权页 → 授权 Cloudflare 的 GitHub App（仓库权限建议选 &lt;code&gt;Only select repositories&lt;/code&gt;，只勾 &lt;code&gt;xxxxxx.github.io&lt;/code&gt;）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;回到 Cloudflare 选仓库&lt;/strong&gt; → &lt;code&gt;xxxxxx.github.io&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Build command&lt;/strong&gt; 填：&lt;/li&gt;
&lt;/ol&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;git submodule update --init --recursive &amp;amp;&amp;amp; hugo --minify --gc ${HUGO_BASEURL:+--baseURL &amp;#34;$HUGO_BASEURL/&amp;#34;}
&lt;/code&gt;&lt;/pre&gt;&lt;ol start="4"&gt;
&lt;li&gt;&lt;strong&gt;Advanced settings&lt;/strong&gt; 填：&lt;/li&gt;
&lt;/ol&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;项&lt;/th&gt;
 &lt;th&gt;值&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Root directory&lt;/td&gt;
 &lt;td&gt;留空&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Build variables and secrets&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;HUGO_VERSION&lt;/code&gt; = &lt;code&gt;0.154.5&lt;/code&gt;（&lt;strong&gt;必填&lt;/strong&gt;）；&lt;code&gt;HUGO_BASEURL&lt;/code&gt; = &lt;code&gt;https://foreveryang.xxxxx.workers.dev/&lt;/code&gt;（不知道就先不建）&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;API token&lt;/td&gt;
 &lt;td&gt;保持默认（Create new token）&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;ol start="5"&gt;
&lt;li&gt;&lt;strong&gt;两个开关&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Enable Preview builds&lt;/strong&gt; → 保持默认开启。它只对“非 main 分支”生效，你平时只推 main，不额外耗构建分钟；以后开分支试版式就能拿预览 URL。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protect with Cloudflare Access&lt;/strong&gt; → &lt;strong&gt;必须关&lt;/strong&gt;。这是给内部/私密站点套 Zero Trust 登录的，开了访客要先登录才能看博客。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;③ 点部署后，日志里核对三行&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Hugo 版本 = &lt;code&gt;0.154.5&lt;/code&gt;（证明 &lt;code&gt;HUGO_VERSION&lt;/code&gt; 生效，没退到镜像默认的 &lt;code&gt;0.147.7&lt;/code&gt;）；&lt;/li&gt;
&lt;li&gt;没有 &lt;code&gt;Unable to find theme &amp;quot;hugo-bearneo&amp;quot;&lt;/code&gt;（submodule 拉下来了）；&lt;/li&gt;
&lt;li&gt;末尾 &lt;code&gt;wrangler deploy&lt;/code&gt; 成功，并给出 &lt;code&gt;https://xxxxxxxx.&amp;lt;子域&amp;gt;.workers.dev&lt;/code&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;之后就是把域名发给 AI，让它确认就可以了。Cloudflare 的 workers 域名国内网络访问不了，可以自行使用自定义域名。&lt;/p&gt;
&lt;h2 id="github-怎么自定义域名"&gt;GitHub 怎么自定义域名&lt;/h2&gt;
&lt;h3 id="关键顺序别做反"&gt;关键顺序（别做反）&lt;/h3&gt;
&lt;p&gt;GitHub 官方明确要求：&lt;strong&gt;先在仓库里填好域名，再去 DNS 加记录&lt;/strong&gt;，反了有子域名被人抢注的风险。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;① GitHub（先做）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;https://github.com/mythstraw/mythstraw.github.io/settings/pages&lt;/code&gt; → Custom domain 填：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;blog.foreveryang.top
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;→ Save&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;② 腾讯云 DNSPod（后做）&lt;/strong&gt; 添加记录：&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;主机记录&lt;/th&gt;
 &lt;th&gt;记录类型&lt;/th&gt;
 &lt;th&gt;记录值&lt;/th&gt;
 &lt;th&gt;线路&lt;/th&gt;
 &lt;th&gt;TTL&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;blog&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;CNAME&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;xxxxxx.github.io&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;默认&lt;/td&gt;
 &lt;td&gt;600&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;记录值不带仓库名、也不要填 Settings 里那个 &lt;code&gt;*.pages.github.io&lt;/code&gt; 的临时地址。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;③ 生效后&lt;/strong&gt;（几分钟 ~ 24h）回 Pages 页勾 &lt;strong&gt;Enforce HTTPS&lt;/strong&gt;（证书签发还要几分钟）。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;④ 让 AI 自行检查去触发一次构建&lt;/strong&gt;：仓库 Actions → &lt;em&gt;Deploy Hugo site to Pages&lt;/em&gt; → Run workflow（或随便 push 一篇文章）。构建时 &lt;code&gt;configure-pages&lt;/code&gt; 会把 baseURL 自动换成新域名，canonical / &lt;code&gt;index.xml&lt;/code&gt; / favicon 就都是 &lt;code&gt;blog.foreveryang.top&lt;/code&gt; 了。&lt;/p&gt;</description></item></channel></rss>