产物布局

每个站点的构建产物为一个自包含目录,也是服务器的托管单元:

<site-root>/
  index.html             入口页:纯 Markdown 格式为 README.md / index.md 生成的页面;
                         doc-doc 格式为重定向页,跳转到首个语言(与项目)的落地页
  <dir>/<page>.html      页面,镜像源目录结构;每个目录的 index.md 生成 <dir>/index.html
  .docdoc-site           产物标记文件,JSON 元数据(页面总数),构建开始时即写入
  assets/
    docdoc.css           唯一样式文件(含代码高亮主题、亮暗主题变量)
    docdoc.js            唯一脚本(单文件 IIFE)
    tree.json            目录树数据
    index.json           全文索引数据

规则

规则 说明
一 md 一页 每个 .md 恰好对应一个 .html,路径镜像源文件相对路径
文件名固定不哈希 配合服务器长缓存头,产物目录可整体校验与迁移
产物即托管单元 服务器直接读取产物目录,运行期无渲染、无数据库
标记即归属 .docdoc-site 存在即视为 docdoc 产物,构建重复执行可安全覆盖,非产物目录拒绝写入

上传注册

本地路径源注册到远程服务器时,整个产物目录打包为 .tar.gz 上传;服务器校验入口 index.html 存在后落盘到该站点的 DataDir 子目录,站点信息中的页面总数读取自标记文件。