Skip to content

官方原图镜像审计(2026-04-21)

来源:node scripts/official-image-hotlink-audit.mjs --json

结论先说:当前站内真正缺的不是“图片来源”,而是 WE ARE VANA'DIEL 官方原图的本地镜像文件。
这批图已经全部精确定位到原始 URL,可以按镜像路径直接采集,不需要自己造图,也不需要再猜来源。

当前基线

  • 扫描 markdown:199
  • 含官方热链的页面:30
  • 官方热链引用:40
  • 唯一官方原图:30
  • 已本地镜像:0
  • 仍待镜像:30

按来源拆分:

  • history/15
  • uploads/playguide/3
  • gallery/12

放置判断

1. 放置合理,而且应该优先镜像

这批图和正文主题一一对应,属于“与原文一致”的优先采集对象:

  • 系统总览 / 路线页: /content/abyssea/content/classic-orb-battlefields/content/classic-rare-drop-cases/content/dynamis-roadmap/content/einherjar/content/einherjar-ready-check/content/limbus/content/limbus-temenos-apollyon/content/sea-limbus-roadmap/content/sea-nm-system/content/sky-roadmap/content/voidwalker-nm
  • 系统页: /systems/gobbie-mystery-box/systems/trusts
  • 职业 / 桥接页: /jobs/job-macro-templates/jobs/job-party-templates/jobs/job-trust-setups/jobs/job-ws-skillchain-cheatsheet/jobs/super-ws
  • 回归指南图位: /content/classic-hnm-overview/content/classic-hnm-ready-check/systems/login-points

判断理由:

  • 这些页面放的不是泛用装饰图,而是官方历史条目或回归指南原图。
  • 图片承担的是“系统语境入口”,不是给正文硬凑数量。
  • 大部分页面已经把 NPC 小图下沉到说明段,主视觉层级基本正确。

2. 放置基本合理,但镜像优先级次一级

这批是 gallery/ 概念设定图,属于“官方原图无误,但更偏气质图 / 设定图”的页面:

  • /jobs/magic
  • /jobs/magic-complete
  • /jobs/spell-targeting
  • /jobs/artifact-armor-plus1
  • /jobs/popular-job-staples
  • /jobs/job-subjob-recommendations
  • /jobs/blue-magic-complete
  • /systems/weapon-types

判断理由:

  • 图源没问题,和页面主题也不是错位。
  • 但它们多数承担的是“职业气质入口”而不是“系统证据图”。
  • 采集顺序应排在 history/playguide/ 之后。

3. 当前最该盯的放置风险

  • /jobs/magic-complete/jobs/spell-targeting/jobs/artifact-armor-plus1/jobs/popular-job-staples 的页首用了 3 张概念图并排展示。 这些图本身没错,但页首信息密度已经偏高,不建议继续往首屏追加更多设定图。
  • /jobs/magic 的两张法系设定图是合理的;如果后面继续扩图,优先替换而不是叠加。
  • /systems/login-pointsHome Point / Survival Guide 双图属于说明图,不是装饰头图,当前放置是合理的。

4. 不建议为了补图再硬塞头图的页面

这几页依然应该保持“无图或轻图”策略,不要为了追求全站都有头图而乱补:

  • /jobs/defensive-skill-matrix
  • /jobs/job-skill-aptitude
  • /jobs/job-traits
  • /jobs/magic-skill-matrix
  • /jobs/skill-rank-matrix
  • /jobs/subjob-toolbox-matrix

原因很直接:这些页主体是矩阵和查表,应该补关系示意图,而不是再塞外站大图。

精确待采清单

History 官方图

本地镜像路径当前使用页原始官方图
/img/official-sourced/mirror/history/2002/2002-14.jpg/jobs/job-party-templateshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2002/2002-14.jpg
/img/official-sourced/mirror/history/2003/2003-31.jpg/content/sky-roadmaphttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2003/2003-31.jpg
/img/official-sourced/mirror/history/2004/2004-01.jpg/content/dynamis-roadmaphttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2004/2004-01.jpg
/img/official-sourced/mirror/history/2004/2004-26.jpg/content/classic-orb-battlefieldshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2004/2004-26.jpg
/img/official-sourced/mirror/history/2005/2005-07.jpg/content/classic-rare-drop-caseshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2005/2005-07.jpg
/img/official-sourced/mirror/history/2005/2005-11.jpg/content/limbus/content/limbus-temenos-apollyon/content/sea-limbus-roadmaphttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2005/2005-11.jpg
/img/official-sourced/mirror/history/2007/2007-03.jpg/content/einherjar/content/einherjar-ready-checkhttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2007/2007-03.jpg
/img/official-sourced/mirror/history/2008/2008-01.jpg/content/sea-nm-systemhttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2008/2008-01.jpg
/img/official-sourced/mirror/history/2010/2010-03.jpg/content/abysseahttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2010/2010-03.jpg
/img/official-sourced/mirror/history/2010/2010-10.jpg/content/voidwalker-nmhttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2010/2010-10.jpg
/img/official-sourced/mirror/history/2011/2011-06.jpg/systems/gobbie-mystery-boxhttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2011/2011-06.jpg
/img/official-sourced/mirror/history/2013/2013-11.jpg/jobs/super-wshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2013/2013-11.jpg
/img/official-sourced/mirror/history/2017/2017-09.jpg/jobs/job-ws-skillchain-cheatsheethttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2017/2017-09.jpg
/img/official-sourced/mirror/history/2017/2017-10.jpg/jobs/job-trust-setups/systems/trustshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2017/2017-10.jpg
/img/official-sourced/mirror/history/2022/2022-02.jpg/jobs/job-macro-templateshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/history/2022/2022-02.jpg

Play Guide 官方图

本地镜像路径当前使用页原始官方图
/img/official-sourced/mirror/uploads/playguide/part1/19a.jpg/systems/login-pointshttps://we-are-vanadiel.finalfantasyxi.com/uploads/playguide/part1/19a.jpg
/img/official-sourced/mirror/uploads/playguide/part1/19b.jpg/systems/login-pointshttps://we-are-vanadiel.finalfantasyxi.com/uploads/playguide/part1/19b.jpg
/img/official-sourced/mirror/uploads/playguide/part2/02d.jpg/content/classic-hnm-overview/content/classic-hnm-ready-checkhttps://we-are-vanadiel.finalfantasyxi.com/uploads/playguide/part2/02d.jpg
本地镜像路径当前使用页原始官方图
/img/official-sourced/mirror/gallery/season/2/vol/1/0.jpg/systems/weapon-typeshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/2/vol/1/0.jpg
/img/official-sourced/mirror/gallery/season/3/vol/3/4.jpg/jobs/magic-completehttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/3/4.jpg
/img/official-sourced/mirror/gallery/season/3/vol/3/9.jpg/jobs/spell-targetinghttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/3/9.jpg
/img/official-sourced/mirror/gallery/season/3/vol/3/10.jpg/jobs/artifact-armor-plus1https://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/3/10.jpg
/img/official-sourced/mirror/gallery/season/3/vol/3/13.jpg/jobs/magic/jobs/magic-complete/jobs/spell-targetinghttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/3/13.jpg
/img/official-sourced/mirror/gallery/season/3/vol/3/15.jpg/jobs/artifact-armor-plus1/jobs/magic/jobs/magic-complete/jobs/spell-targetinghttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/3/15.jpg
/img/official-sourced/mirror/gallery/season/3/vol/3/19.jpg/jobs/artifact-armor-plus1https://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/3/19.jpg
/img/official-sourced/mirror/gallery/season/3/vol/4/11.jpg/jobs/popular-job-stapleshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/4/11.jpg
/img/official-sourced/mirror/gallery/season/3/vol/4/13.jpg/jobs/popular-job-stapleshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/4/13.jpg
/img/official-sourced/mirror/gallery/season/3/vol/4/15.jpg/jobs/popular-job-stapleshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/3/vol/4/15.jpg
/img/official-sourced/mirror/gallery/season/5/vol/1/14.jpg/jobs/job-subjob-recommendationshttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/5/vol/1/14.jpg
/img/official-sourced/mirror/gallery/season/8/vol/1/1.jpg/jobs/blue-magic-completehttps://we-are-vanadiel.finalfantasyxi.com/assets/images/gallery/season/8/vol/1/1.jpg

建议执行顺序

  1. 先镜像 history/playguide/
  2. 再镜像 gallery/
  3. 下载完成后,执行 node scripts/official-image-hotlink-audit.mjs --apply,把正文热链替换为本地路径。
  4. 最后跑一次 npm run docs:build 验证站点构建。

已补的辅助脚本

这次新增了脚本:

  • node scripts/fetch-missing-official-images.mjs

可选参数:

  • --dry-run:只打印待抓取清单
  • --apply-refs:下载成功后顺手把正文热链改成本地镜像路径

当前限制

  • 这次自动化运行环境无法解析 we-are-vanadiel.finalfantasyxi.com,所以没有直接把二进制图片落进仓库。
  • 和前一轮笔记相比,/content/assault 已不在当前工作树里,所以 2006-03.jpg 不再计入本轮待镜像清单。
  • 审计和下载脚本已经就位;一旦网络链路恢复,不需要重新分析来源,直接运行脚本即可。

Powered by ff11sf.com