26 KiB
教程栏目与内容维护
状态:2026-10-27 本地内容更新;未提交、推送或发布。当前任务由“先重写一篇客户端文章”扩展为栏目改名及加入此前 DNS 进阶文章;随后按用户要求完成Android、iOS、Mac和Linux旧教程重写;当前文章与版本以写作索引为准。
栏目与文章入口
| 对象 | 本地数据库身份 | URL | 本次状态 |
|---|---|---|---|
| 入门教程 | categories.id=2,原客户端 | /client |
仅更名和更新简介,原平台子分类及 URL 保留 |
| 综合教程 | categories.id=10,根分类,排序1 | /advanced |
原进阶教程更名,地址和文章归属保留;无资源文章的时效 noindex 策略 |
文章标题、ID、稳定URL、源文件和正文关联统一维护在AI写作与文章关联索引,本页只保留实现、验收与回退资料。
本地预览根为 http://fna-v3.loc。分类名称由数据库驱动,桌面和移动菜单共用 global_nav_tree 文件缓存;本次仅清除此键。没有改栏目路由、已有平台名或文章分发入口。
当前发布方式
2026-10-27起普通编辑文章使用本站独立文章API,不经过ATOM;本文下方源文件/HTML/数据库的说明保留当前素材及历史实施证据,新稿由API完成渲染、版本和公开正文同步,不再以临时SQL脚本发布。Windows入门文章362已在免费订阅文案修正时显式接管为verge-windows-start,本地已发布API版本1;迁移和DNS两篇随后在移除顶部重复信息时通过API显式绑定原ID;当前版本以写作索引为准。
正文与排版
- 可编辑正文源:
docs/content/tutorials/windows.md(纯入门)、migration.md(原迁移文章)、dns.md、v2rayng-android.md、clash-meta-android.md。 - 同目录 HTML 为 CommonMark 生成结果,实际运行正文存于本地数据库。改 Markdown 后需要重新渲染和定点更新数据库,不能把仅修改源文件当成页面已变。
- 当前文章模板对正文执行
nl2br。入库前先把<pre>内换行编码成 ,其余 HTML 换行去除;避免代码块重复换行或样式结构损坏。 - 公共教程样式:
public/css/tutorials.css,限定.tutorial-body/.tutorial-category;未改站点全局样式或广告。 - 技术封面:
public/images/tutorials/windows-cover.svg、migration-cover.svg、dns-cover.svg,为文字与路径图,不涉及既有 CFN 品牌插画池。 - Windows 导入示例:
public/images/tutorials/verge-import.png。来源为 Clash Verge Rev 官方快速入门 https://www.clashverge.dev/guide/quickstart.html ,原图 https://www.clashverge.dev/assets/guide/quickstart/verge_import.png 。图片旁保留来源及“界面可能与当前版本不同”,未声称是 v2.5.8 Windows 实机截图。 - 入门教程第二张操作图:
public/images/tutorials/verge-system-proxy.png,来自官方 quickstart 的https://www.clashverge.dev/assets/guide/quickstart/verge_enable_sysproxy.png,图注保留来源与版本边界。 - 列表模板仅为
/client和/advanced增加栏目标题、简介和页面title/description。文章模板修正了原本相对路径的分类面包屑为站点绝对 URL。
内容核验与边界
2026-10-27 核对官方安装/发行资料,Clash Verge Rev 最新发行页指向 v2.5.8(2026-10-09)。文章对照官方 quickstart、profile、Windows FAQ;兼容性按安装文档,不承诺未经测试的连接速度。
DNS 原稿的关键字段再次对照 Mihomo 官方 DNS、TUN 文档:dns-mode native、dns-hijack、节点域名独立解析、代理组后缀与 strict-route 的平台限制。文章明确区分 DNS 接管、加密和连接出口;保留浏览器独立 DNS、远端解析、IPv6 及故障状态验证限制。
这是教程内容及网站页面验收;没有安装 Windows 客户端、导入真实订阅、切换用户代理或执行设备 DNS 泄漏测试。
使用 Query Builder 事务定点更新,校验目标仅为本机 fna_v3、已备份行与当前行一致,并确认其他六篇未变化;未触发 Eloquent 保存事件、推送或 Scout 索引同步。现有搜索索引的环境隔离尚未在本任务确认,因此本地搜索结果未同步,不把栏目/详情验收写成搜索验收。
页面验收
两栏目及三文章分别在 1360px、390px 检查 HTTP 200、标题、导航、面包屑、教程图片、代码换行与横向溢出;另检查移动导航可展开并包含两教程入口。DNS 3幅图解、入门教程1幅流程图和2张官方操作图、迁移文的原有图文均可显示。入门正文不包含迁移内容;迁移文已从入门移至进阶,DNS末尾入门链接已指向新文章。
所有浏览器请求按来源白名单,仅允许 FNA_V3、其 Vite dev 和本地 Resource V2;线上统计和历史文章的线上图片请求在发出前被拦截。没有项目线上访问或线上页面验收。
证据:/Users/hellcat/Documents/Codex/2026-10-22/fq/outputs/verge-beginner-verification.json 与同目录桌面、手机截图。此处验收结果以最终回读为准。
本次更正的回退
2026-10-27用户明确入门只讲软件使用,将迁移文章移到进阶。更正前源码与两篇受影响数据库行保存在 /Users/hellcat/Documents/Codex/2026-10-22/fq/work/verge-beginner/,applied.json记录新入门ID362及更新后行。若撤回本次更正,先核对当前行未被后续修改,再恢复212和361,检查362无后续依赖后移除,并恢复相应正文源和维护说明;不要误用前一轮备份撤销栏目改名。其余文章本次事务前后哈希内容一致。
首轮回退与后续
本次工作和备份根:/Users/hellcat/Documents/Codex/2026-10-22/fq/work/client-rewrite/。
clients-before.json/categories-before.json:修改前7篇文章和8个分类。applied.json:本次旧行、新行、实际新增ID及写入时间,权限0600。index.before.blade.php/show.before.blade.php:基于已有并行修改保存的模板;*.after.blade.php用于核对本次差异。- 回退先比较数据库当前行和回执中的已应用行;有后续修改或关联数据时先合并,不直接覆盖。恢复212及分类2原值,确认新增361/10未被后续使用后移除,并仅刷新导航缓存。模板按本次差异撤回,不能整份覆盖后续修改。删除新素材前检查是否被其他文章引用。
- Markdown和生成HTML已随项目保存;数据库内容不是Git文件,上线前仍需单独设计并审核生产迁移,本次不构成部署。
当前原七篇旧教程均已处理,另有Windows纯入门和DNS进阶文章,共九篇长期内容。iOS m170、Mac m172/m173、Linux m174的批量重写见下文;Mac/Linux原重复正文已按各自任务分开。本地内容完成不代表客户端真机联网或生产部署验收。
免费节点场景文案修正(2026-10-27)
删除Windows入门中不适用于本站公开免费订阅的“不要公开分享”提醒框;导入步骤指向/freenode的较新分享,节点失效时自然引导回免费节点页面。通过独立API显式接管362,保留原URL、标题、标签及创建时间,发布版本1;原正文保存在基线版本0,可按API流程回退。原始稿、请求和回执在output/free-tutorial-fix/,正文源及生成HTML已同步。接收器补齐既有图解使用的安全small标签,隔离测试19项149断言通过。公开页面桌面/手机核对见output/free-tutorial-fix/article-verification.json;未部署线上。
本轮全库check_docs.py检查发现2项无关账号资源的生成视图过期;本次未修改那些资源,也未越范围重建。项目文章源、内链及本地页面验收已通过,相关维护引用逐项存在。
v2rayNG Android 入门重写(2026-10-27)
按用户“再来一章”定点重写原文章208(m171),使用原稳定内容键v2rayng-android-legacy显式接管,保留地址、栏目及标签;本地API版本1,基线0保留旧文。移除“稳定性极佳”的泛化承诺与1.7.3第三方安装包链接,换为官方发行入口、架构选择、本站v2ray订阅、订阅分组更新、VPN授权、连接检查和日常排错。2幅HTML/CSS流程图明确标为示意;列表封面换为本地public/images/tutorials/v2rayng-cover.svg,不请求旧线上封面。教程有序列表补list-style-type:decimal,恢复被站点reset隐藏的步骤编号。
依据为官方2.3.11发行页、发布文件Wiki、该tag的界面/中文资源/构建配置及Android VPN官方文档;源码取证在output/v2rayng-rewrite/upstream/。已核对本站本地资源页实际提供v2ray格式入口,没有请求其线上订阅文件。未安装Android客户端、未导入真实订阅、未做节点或真机联网实测。
源文件、API草稿、发布回执和原文备份见docs/content/tutorials/v2rayng-android.md/.html与output/v2rayng-rewrite/。缓存、独立搜索索引和sitemap回执均done;签名预览及公开页1360/390排版、两幅图解、目录和内链检查见该目录preview-verification.json和public-verification.json。浏览器仅允许登记本地来源;未提交、推送或部署生产。回退使用API历史版本0生成新草稿后预览发布,不直接覆盖数据库;正文源与关系索引同任务同步。
Clash Meta for Android 入门重写(2026-10-27)
原Clash for Android文章206(m169)改为Clash Meta for Android的完整使用教程,保留原ID、内容键cfa-android-legacy、URL、栏目和标签。官方发行页当时为v2.11.36;下载架构、系统要求、配置保存/激活、首页启动和代理模式按该tag的README、中文资源与界面源码核对,证据在output/clash-android-rewrite/upstream/。正文以本站Clash/Mihomo免费订阅为主线,包含2幅HTML/CSS图解、本地技术封面和基本排错;不采用旧CFA的下载入口,不声称真机连接已实测。
v2rayNG文章208只在订阅格式说明处增加指向m169#import的链接;206同时指向m171#import。两篇由API同批发布,分别为版本1和2;原文备份、请求、回执、预览与公开页1360/390验收见output/clash-android-rewrite/。缓存、搜索、sitemap均done;保留原文章身份,两个Markdown和HTML源及关系索引已同步。浏览器只允许本地来源,未访问线上站点、未安装手机客户端或测试真实订阅,未提交、推送、部署。206基线0保留旧文;回退时需同时处理208新增的#import入向链接,不能只恢复206造成断链。
日期标注(2026-10-27)
用户指出文章头部2026-08-04与正文“更新于2026-10-27”容易混淆。核实206/208的created_at均为2026-08-04,原发布时间随旧文保留;正文日期是此次教程更新时间。共享详情模板在原日期前补“发布于”,与正文“更新于”区分,不伪改原发布日期,也不直接把数据库updated_at当作内容更新时间。仅本地页面模板和响应缓存更新,文章正文/版本不变。桌面与手机验证见output/tutorial-date-label/verification.json,未上线。
去除正文顶部重复信息(2026-10-27)
用户澄清要删除正文开头整行“入门教程 · Android · 更新于……”;上一节的日期语义说明并非用户所指。现已从五篇已整理教程中移除guide-meta整行,保留网站标题信息栏及文末资料核对,其他正文文字与标题、摘要、标签、封面、栏目均回读一致。正文源和HTML同步,写作规范明确后续不再加这类顶部行。通过API同批完成,迁移212与DNS361首次显式接管并保留基线0;当前版本见写作索引。请求、原文、回执和页面验证见output/tutorial-meta-removal/;缓存、搜索和sitemap均done,仅本地生效。
剩余四篇平台教程批量重写(2026-10-27)
用户授权“剩下的一起处理了”。原207/m170改为Quantumult X iOS安装、资源解析和连接;209/m172改为Mac客户端选择与官方下载;210/m173改为Clash Verge Rev Mac安装、订阅、系统代理;211/m174改为Linux桌面安装、订阅与终端代理验证。两篇旧CFW跨平台重复文现在按DMG、DEB/RPM、权限、桌面和终端代理的实际差异组织,保留各自URL,不合并或重定向。iOS区分Quantumult与Quantumult X,并说明本站通用订阅需要兼容的第三方资源解析器;不承诺任意节点兼容或真实可用。
依据为Clash Verge Rev v2.5.8发行与官方文档、Apple应用打开说明、Quantumult X App Store 1.8.1与开发者配置、KOP-XIAO解析器作者源码和curl手册。原ClashX仓库本次404只用于说明旧入口无法核验。源材料在output/remaining-tutorials/upstream/;未安装客户端、未修改本机网络、未访问线上订阅或进行设备/节点实测。
正文源为docs/content/tutorials/quantumult-x-ios.md、mac-client-guide.md、verge-mac.md、verge-linux.md及同名生成HTML。每篇2幅HTML/CSS图解,Mac操作文另含现有官方订阅截图并注明示例范围;4张本地技术封面替换不可直接继承的线上图片。正文不添加顶部重复信息行。
通过本地独立文章API同批显式接管原ID,四篇均发布版本1,基线0保留旧文。草稿ad7be55b-be07-4509-ab19-c50856c21bc4,发布回执34a14f98-58b5-4e3f-bc3c-7563a28755b7;缓存、独立搜索与sitemap均done。原ID、slug、栏目、标签和头图开关回读一致,文章总数不因本批增加。备份、请求、回执、页面截图和验证在output/remaining-tutorials/。预览及公开页1360/390排版、图解、图片、目录与实际链接锚点通过;平台栏目标题与URL另行核验。浏览器仅放行登记本地来源,未提交、推送或部署生产。
关系维护在写作索引唯一正文。回退使用API基线0生成新草稿,再预览发布;Mac下载指南、Mac操作、Linux和iOS间已有锚点依赖,回退某篇时须同步处理相应入向链接,不单独恢复缺少锚点的旧文造成断链。
安卓缩略图单张试样(2026-10-27)
用户要求去掉缩略图顶部英文、加入相关应用图标,先改一张。仅修改public/images/tutorials/clash-meta-android-cover.svg:移除“ANDROID · GET STARTED”,保留Clash Meta专名与中文入门标题;以官方v2.11.36启动图标的原始矢量路径制作蓝色M与橙色猫须图标。没有使用仓库中保留的旧ic_launcher-web.png猫图。
原图、官方素材出处与回退备份在output/tutorial-cover-sample/,恢复同目录clash-meta-android-cover.before.svg即可回退。原文章封面URL不变,未修改文章正文、版本、其他封面或插画图池。安卓栏目桌面与手机实际裁切预览见card-1360.png、card-390.png及verification.json。仅本地样稿,待用户评价,不自动扩展到全部封面;未提交或上线。
2026-10-27用户要求撤回上述单张缩略图试样:已使用output/tutorial-cover-sample/clash-meta-android-cover.before.svg原样恢复Clash Meta封面,字节比对一致。原顶部“ANDROID · GET STARTED”、文字和线条布局恢复;其他封面未改。图标试样仅保留在output作为历史,不再用于页面。仅本地文件恢复,未上线。
2026-10-27按用户指定,将Windows、v2rayNG和Clash Meta三张技术封面的“GET STARTED”统一替换为“开始使用”,保留其他文案与布局;仅本地SVG文件修改,XML解析通过,未上线。后续同类封面沿用中文“开始使用”。
2026-10-27补齐进阶栏目两张封面的中文标签:DNS封面ADVANCED改为“进阶教程”,迁移封面MIGRATION改为“迁移指南”。已检查全部9张教程SVG,无GET STARTED、ADVANCED、MIGRATION遗留;应用名、平台名与技术格式名保留,布局不变。仅本地素材更新,未上线。
入门父级banner与综合教程更名(2026-10-27)
按用户确认,/client改用与Windows子栏目相同的既有图片banner,复用其aBanner配置;标题为真实HTML H1“入门教程”,简介为HTML段落,置于图片下部的深色半透明区域。移除该页原先重复的白底标题区,空栏目和无banner时保留文字回退。图片保持固定比例,桌面banner位于文章列表列内,与子栏目一致;没有更改Windows子栏目或其他平台banner。
同时categories.id=10的名称由“进阶教程”改为“综合教程”,保留sSlug=advanced、排序、简介、文章归属和URL。导航、栏目标题及文章分类名称由数据库生成;未改文章标题“Clash 进阶”这一主题描述。清除global_nav_tree和响应缓存;本次为栏目配置,未改文章版本。
代码与栏目数据原始备份、精确改动和回读在output/tutorial-category-banner/。仅本地变更,未提交、推送或上线。回退时先核对无并行变化,仅恢复栏目2的aBanner、栏目10的sName与本次模板/CSS差异,不覆盖整个数据库或其他修改;随后清导航与响应缓存。
验收完成:/client、/advanced、Windows子栏目及迁移文章在1360/390宽度均HTTP200、单一H1、无横向溢出;父级标题简介完整落在banner内,子栏目保持原样。导航、栏目页title与文章分类已显示“综合教程”,DNS缩略图的栏目标签同步更名。证据为该输出目录verification.json和截图。
公开正文清理与父栏目banner统一更正(2026-10-27)
用户指出“本文的核对范围”出现在公开文章中。该内容属于已入库正文,上线不会自动删除;现已通过独立文章API同批清理九篇教程。删除迁移文顶部核对框,以及文末“未进行真机实测/未修改本机网络”等内部过程说明,保留官方参考链接、实用兼容限制、配置注意事项和内链;不因此新增实测宣称。完整原文与核验范围仍在历史API版本、output/tutorial-editorial-cleanup/*before*及本文先前记录中。写作索引已加入公开正文不放内部验收记录的规则。
清理稿预览通过后按hash发布,缓存、独立搜索和sitemap均done;HTML源已从API回读,标题、摘要、ID、slug、栏目、标签和封面保持一致。各文章最新版本见写作索引,备份、草稿、回执和公开页验证见output/tutorial-editorial-cleanup/。仅本地更新,未部署生产。回退时按对应前一API版本生成草稿预览发布,不直接恢复整个数据库。
用户进一步明确父级banner必须与子级完全同款。因此撤销父级专用小字简介和深色蒙层CSS:入门与综合栏目均使用同一list-cover结构、字号、间距、背景蒙层,显示中文栏目名与上标文章数量;综合栏目复用Windows现有图片banner配置。简介保留在meta description中,banner不再显示。栏目数量按同一分类查询范围的总行数计算,避免simplePaginate当前页仅两篇造成数字错误;入门含子栏目共7篇、综合2篇、Windows1篇,翻页总数不变。没有改文章列表筛选或分页行为。
本次更正备份与数据操作位于output/tutorial-category-banner/,categories.before-align.json及index-with-description.before.blade.php保留更正前状态;ArticlesService.before-count.php保留计数变更前代码。桌面/手机计算样式对比、真实总数、无副标题与公开页面截图见aligned-verification.json及aligned-*.png。两项均仅本地完成,无提交、推送、上线。
全部教程读者内容复查(2026-10-28)
按用户要求,复查现有九篇教程的正文、摘要、图注及封面。七篇定点清理,Windows纯入门和Mac操作文未发现同类残留、保持原样。删除或改写“本页旧文”“页面原先介绍”“这次沿用原地址”“核对本文时”等内部编辑历史和核验过程;版本信息保留为明确的适用/示例版本,系统要求和配置限制保留。Android两篇文末移除仅用于编辑取证的界面实现/构建源码链接,保留官方下载、项目和实用参考;Mac下载指南摘要改为读者的选型任务。迁移文同时去除不适用于本站公开免费订阅的账户保密提醒,导入入口增加/freenode,旧订阅和自定义配置的迁移步骤保留。DNS中的“独立验收项”改为读者实际检查步骤。
全部九篇摘要、封面文字和图注已核对;没有删除占位地址替换、平台兼容、节点有效性、DNS路径验证或配置合并等实用限制。未引入新的版本现状结论,未进行额外线上访问或设备联网测试。内部事实及完整修改前源保留在本文历史和output/tutorial-reader-audit-20261028/;不再发布到读者正文。
七篇通过本站独立API原子更新;曾有两轮未发布草稿,最终发布冻结草稿以该目录draft-result.json为准,原始公开版本在before-*.json。请求、发布回执、逐项修改审计、正文回读及页面检查分别见audit.json、publish-result.json、source-verification.json、preview-verification.json和public-verification.json。缓存、独立搜索与sitemap均done。Markdown、HTML与写作关系索引同步,保留ID、slug、栏目、标题、标签和封面;仅Mac下载指南摘要作上述定点调整。文章最新API版本以写作索引为准,回退通过API历史版本重新建立草稿后发布,不直接恢复整库。
预览最初因原有Vite本地开发服务未运行而缺少站点样式;已在原登记127.0.0.1:5187恢复dev服务后重新检查。没有执行生产构建、提交、推送或上线。浏览器只放行已登记本地来源,未访问生产站点或节点订阅。
系统代理与 TUN 综合教程(2026-10-28)
新增《系统代理和 TUN 有什么区别?接管范围、使用选择与排错》,稳定键/slug为system-proxy-vs-tun,本地ID365,归属综合教程。源文件为docs/content/tutorials/system-proxy-tun.md及API回读的同名HTML;封面为public/images/tutorials/system-proxy-tun-cover.svg,沿用现有文字与线条风格,标签使用“代理设置 · 综合教程”。正文以桌面客户端为范围,包含系统代理、TUN和接管/出口两阶段三张HTML流程图,以及组合说明、场景选择、切换检查和按现象排错。没有复制DNS配置片段,DNS专项操作链接既有正文。
资料依据为Clash Verge Rev官方快速入门、名词解释、绕过说明、Windows FAQ,以及Mihomo TUN配置文档;准确URL与编辑取舍见output/system-proxy-tun-20261028/research.json。不同文档的默认协议栈描述有版本差异,正文未写固定默认值;没有把TUN描述为所有连接必经、必然防DNS泄漏或游戏加速。核验范围为官方资料与本地渲染/链接检查,未执行设备联网测试,未修改本机代理、DNS或路由;这些内部信息只保留在维护记录。
Windows入门的TUN问答增加#choose入口;DNS教程配置片段前增加#tun入口,两篇其余内容和文章元数据保留。新文链接Windows、Mac和Linux实际连接章节,Linux终端显式代理章节及DNS接管/加密/出口章节。写作索引同步新增登记、实际关系与版本,移除已完成的TUN待写选题。
独立API冻结草稿06276f75-22f0-448d-b3b7-050662f1abc3经预览后发布,回执dc549d99-b9b4-40f6-b15d-0618c31bc1e6;新文版本1、Windows版本4、DNS版本6。缓存、独立搜索、sitemap全部done。完整修改前正文、请求、回执、源文件回读与检查结果保存在output/system-proxy-tun-20261028/。
1360和390宽度的三篇签名预览与正式页面均HTTP200,无横向溢出;目录与正文内链目标、锚点均通过,三张图已查看截图。综合教程栏目包含新文,banner总数为3,封面沿用现有样式。浏览器仅放行登记的本地来源。仅本地完成,未提交、推送或生产部署;旧文回退通过API历史版本生成草稿,不覆盖整库;新文如需撤下先处理上述入向链接。
文章样式试改已撤回(2026-10-28)
按用户“改回去先”的要求,已从output/tutorial-style-20261028/tutorials.before.css完整恢复public/css/tutorials.css,撤回本次主题样式设计,并删除写作规范中随之新增的“文章组件与排版”段落。文章正文、数据库与版本未变。试改截图和检查记录保留在输出目录,仅作历史记录,不代表当前样式。仅本地恢复,未上线。
小标题蓝线定点调整(2026-10-28)
用户在撤回整套样式后,明确只处理突兀蓝线。现仅向public/css/tutorials.css追加标题覆盖:.post-content .tutorial-body h3::before不再生成原蓝色渐变装饰,小标题使用左侧3px主题色竖线、适当左内边距与行高;h2/h3恢复block,修复全局inline造成相邻标题连行。主题色使用站点--color-primary,当前为#A758A5。其他目录、图解、表格、链接、字号和正文内容保持原样,没有重新引入已撤回的整体设计或对应写作规范。
修改前样式与本地1360/390亮色、深色检查记录在output/tutorial-heading-20261028/。四种显示状态均无页面横向溢出、标题与后续元素无重叠,旧伪元素消失,竖线读取当前主题色;桌面和手机截图已查看。仅本地生效,无文章数据修改、提交、推送或上线。
本地样式服务恢复(2026-10-28)
用户反馈/advanced排版再次错乱。现场确认public/hot仍指向127.0.0.1:5187,但该端口无监听,导致Vite样式/脚本不可用,页面退化为原始HTML(双Logo及展开导航)。已按原配置恢复npm run dev,仅监听127.0.0.1:5187,Vite7.3.1启动成功;刷新后浏览器截图确认Logo、导航、栏目banner与文章卡片恢复,无横向溢出。未修改教程正文、数据库、模板、全局字号或生产环境。截图codex/output/advanced-styles-restored-20261028.png。恢复的是当前本地dev进程,不代表已配置登录自启或已核实此前进程退出原因。