网站定时更新(Site Scheduled Updater)
把「某个领域技能采集到的知识」自动发布到公开网站,并定时更新的通用方案。全流程国产网站,免备案、免费。
架构:采集与发布解耦
网站更新不自己采集,而是「消费」各领域采集技能的产出。四层分工:
| 层 | 职责 | 变化频率 |
|---|---|---|
| 采集任务 | 各领域技能自带的「学习更新」,把知识写进自己的 daily/*.md |
每个领域一个 |
知识源配置 sources.json |
记录「网站要展示哪些知识源」(技能名 + daily 目录路径) | 加新领域时改一次 |
| 本技能(发布引擎) | 读配置 → 汇总知识 → 生成站点 → 部署 | 几乎不变 |
| 发布任务(10 点) | 触发发布引擎跑一遍 | 不变 |
未来加新领域只需两步:① 给那个技能配采集任务;② 在 sources.json 加一行。发布任务和本技能都不用改。
开始前:先回答 5 个问题
动手搭建前先想清楚,答案直接决定技术选型(纯静态脚本 vs web-builder):
| 决策问题 | 决定什么 | 偏纯静态脚本 | 偏 web-builder |
|---|---|---|---|
| 内容怎么来? | 数据源方式 | 脚本自动采集 | 后台手动发布 |
| 要交互吗? | 前端复杂度 | 只看内容 | 搜索/筛选/评论 |
| 要 SEO 吗? | 渲染方式 | 要搜索引擎收录 | 纯后台可 SPA |
| 更新频率? | 是否需定时任务 | 每天自动更新 | 偶尔手动更新 |
| 维护成本? | 是否接受构建链 | 零依赖免构建 | 能接受构建步骤 |
结论:
- 五项都偏左(自动采集、只读、要 SEO、定时、零依赖)→ 用本技能的纯静态生成脚本,直接走下方核心流程
- 有一项偏右(要交互/后台/独特设计)→ 先用 web-builder 构建,再用本技能部署 + 定时更新
核心流程
前置准备:阿里云(域名)、腾讯云(EdgeOne 托管)、Gitee(代码)三个个人实名账号。从 0 到 1 完整步骤清单见 references/domain-edgeone-deploy.md。
1. 域名自助办理(阿里云)
- 在阿里云(aliyun.com)购买域名,几十元/年,个人实名认证即可
- 未备案域名也能上线:用 EdgeOne 的「全球可用区(不含中国大陆)」,免 ICP 备案(备案要 2-4 周)
- 域名只用于绑定站点,DNS 解析在阿里云控制台改
2. 部署(腾讯云 EdgeOne Pages,免备案)
- 控制台:console.cloud.tencent.com/edgeone/makers(微信扫码登录)
- 创建项目时加速区域必须选「全球可用区(不含中国大陆)」(含中国大陆会要求备案;且加速区域创建后不可改,选错只能重建项目)
- 绑定自定义域名:TXT 记录验证归属权 → CNAME 解析 → 免费 HTTPS 证书(自动签发)
- MANDATORY 读取:执行部署前,完整读一遍 references/domain-edgeone-deploy.md(含从 0 到 1 完整步骤与踩坑表)
3. 代码管理(Gitee + Git 自动化)
- Gitee(gitee.com)建私有仓库,避免知识库内容被搜索引擎抓取
- 本地 git 仓库初始化后推送;EdgeOne 项目「Git 管理」关联该 Gitee 仓库,生产环境绑定 master 分支、开启自动部署
- 之后每次
git push自动触发部署,无需手动操作 - 推送认证见「关键踩坑」第 1 条
4. 定时更新(采集 + 发布)
- 采集任务:工作日 09:00(各领域技能自己的学习更新)
- 发布任务:工作日 10:00(读 sources.json → 运行生成器 → git push)
- 采集在前、发布在后,留 1 小时采集时间,保证当天内容当天上线
- 发布任务的 prompt 要点:读知识源配置 → 生成站点 → git add/commit/push
网站架构设计
需要设计信息架构或做技术选型时,读 references/website-architecture.md(含三层结构、技术选型决策树、web-builder 搭配)。
要点:定时更新的知识分享网站默认用「纯静态 HTML + 生成脚本」(零依赖、SEO 友好、最适合定时任务自动化);需要复杂交互/后台/独特设计时,先走 web-builder 构建,再用本技能部署。
网站优化
仅在需要优化已上线站点时读 references/website-optimization.md(只列定时更新站点特有的非显然优化点);首次搭建可跳过(Do NOT Load)。
知识源配置 sources.json
放在站点目录下,记录网站要展示哪些采集技能的知识。格式:
{
"sources": [
{
"name": "国企战略投资",
"skill": "soe-strategic-investment",
"daily_dir": "C:\\Users\\<用户>\\AppData\\Roaming\\WPS 灵犀\\serverdir\\target_skills\\soe-strategic-investment\\knowledge\\learning-log\\daily"
}
]
}
daily_dir:该技能采集任务写入daily/*.md的目录- 生成器(scripts/build_site.py)读取此配置,从所有 daily_dir 汇总知识点,按日期归档生成静态站
- 分类映射(政策/案例/风险/行业等)由生成器统一处理
反模式(绝对不要做,踩坑实录)
- NEVER 在「含中国大陆」加速区域创建 EdgeOne 项目——区域创建后不可改,选错只能删项目重建;未备案域名在含中国大陆区会被直接拦截。个人域名必须选「全球可用区(不含中国大陆)」
- NEVER 让 Windows Git Credential Manager 接管推送——它会弹 GUI 凭据框等人工点,定时任务无人点就永久卡死。须
git config credential.helper ""禁用,remote URL 用内置 token(https://用户名:token@gitee.com/...) - NEVER 手动 navigate 打断 EdgeOne 的 OAuth 授权回调——回调页须自然跳回控制台;手动跳走会打断授权回传,导致控制台里「选择仓库」点击毫无反应
- NEVER 用 Windows
tar -a -cf打 zip——EdgeOne 报「不是有效 zip 格式」;必须用 Pythonzipfile打标准 zip,文件放根目录 - NEVER 依赖 edgeone.cool 平台域名做公开访问——默认 401 鉴权(带 eo_token)、无关闭开关;公开访问唯一正路是绑自定义域名
文件索引
references/domain-edgeone-deploy.md:域名办理 + EdgeOne 部署 + Git 自动化的详细步骤与完整踩坑references/website-architecture.md:网站架构设计 + 技术选型 + 与 web-builder 的搭配references/website-optimization.md:SEO + 性能 + 可访问性优化清单scripts/build_site.py:通用静态站生成器(读 sources.json,从多知识源生成站点)