# MindSpace SEO / GEO 回归守卫 日期: 2026-08-07 ## 保护内容 1. **收录策略硬规则**:`h5_publish_records` 中 `access_mode=public` 且 `status=online` 且未过期的发布页允许 SEO/GEO 注入与 sitemap/llms 收录;**此外**,工作区 `public/*.html` 直链在无在线非 public 发布记录阻挡时,默认视为可收录(implicit public)。不再要求 `user_confirmed_at`。 2. **私有页强制 noindex**:在线 `password` / `private_link` / `login_required` / `owner_only` 发布、已过期、embed 模式等必须注入 `noindex, nofollow` 并设置 `X-Robots-Tag`。 3. **总开关默认开启**:`mindspace_config.seo_geo_config` 缺省为全开;库内已保存的旧值仍以数据库为准,需在 memind_adm MindSpace 配置页保存后才会改写生产。 4. **配置来源**:memind_adm MindSpace 配置页 → `PATCH /admin-api/mindspace/config` → Portal `loadMindSpaceConfigCached()`。 5. **百度推送**:仅在 admin 开启 `seo.baiduPush` 且页面可索引时触发;公开页发布与 Plaza 发帖共用该开关。 6. **作者侧 SEO/GEO 必填**:每个 `public/*.html` 必须包含 `title`、`description`、`mindspace-geo`(summary/keywords/faq)与语义化 `

` 分节;`npm run check:mindspace-cover --scope all` 默认校验 MindSpace + 平台静态页(含 `/learn`)。服务端对缺失 FAQ 会尝试从 `h2+p` 自动抽取 JSON-LD。 7. **存量回填**:`npm run backfill:mindspace-geo` 可批量补齐 `mindspace-geo` / `description` / 缺失 `

`,并清理失效 cover 引用;Plaza SSR 页通过 `platform-seo-html.mjs` 注入 canonical / OG / JSON-LD。 ## 必跑验证 ```bash npm run verify:seo-geo npm run verify:seo-discovery npm run verify:portal-access-policy ``` 改以下路径前必须跑上述命令: - `mindspace-index-policy.mjs` - `mindspace-seo-tags.mjs` / `mindspace-geo-tags.mjs` / `mindspace-seo-geo-delivery.mjs` - `mindspace-seo-discovery-service.mjs` / `mindspace-seo-notify.mjs` - `mindspace-public-delivery.mjs` - `server/portal-published-page-delivery.mjs` - `server/portal-workspace-publication-delivery.mjs` - `server/portal-seo-discovery-routes.mjs` - `mindspace-config.mjs` - `mindspace-publications.mjs`(确认公开 + 百度推送) ## 禁止回退 - 禁止让非 public 页面进入 `/sitemap.xml` 或 `/llms.txt` - 禁止在 embed 模式注入 SEO/GEO - 禁止绕过 `resolveIndexPolicy` 直接注入 canonical / JSON-LD - 禁止删除私有页的 `noindex` 保护以“提升收录”