Web
索引内容
Web 连接器把渲染后的页面转换为 OpenCore 文档。每次运行都是 load-state 爬取;起止时间会被忽略,因此此连接器不提供增量 Web 轮询。
HTML 清理会移除部署级忽略 class 与 element。默认 class 包含 sidebar,footer,默认 element 包含 nav,footer,meta,script,style,symbol,aside。运维人员可以用 WEB_CONNECTOR_IGNORED_CLASSES 与 WEB_CONNECTOR_IGNORED_ELEMENTS 替换这两组逗号分隔列表;它们不是单连接器字段。
前置条件
- 允许 OpenCore doc-fetching worker 解析并访问每个目标 URL、重定向、PDF 与 sitemap location。
- 在 worker 镜像中安装 Playwright Chromium runtime。JavaScript 始终启用;管理后台没有仅静态获取开关。
- 选择包含目标内容的最窄 Base URL 路径。Recursive 模式没有 URL 排除列表、深度限制或页面数限制。
- 检查部署的 SSRF 保护设置。在最严格级别,连接器会拒绝解析到 loopback、link-local 或私有地址的 URL;较宽松设置会改变此边界。
- 使用 worker 信任的证书。浏览器导航创建时会忽略 HTTPS 错误,但连通性检查、sitemap 请求、PDF 下载与 content-type 探测使用的 HTTP 客户端没有证书覆盖设置。管理表单没有证书校验开关。
凭据
由于 HTTP probe 与 PDF 请求使用连接器固定的默认 header,部署级浏览器 OAuth header 并不能证明每条非浏览器 fetch 路径都已认证。依赖此方式前,应验证目标内容组合。
在 OpenCore 中配置
- 在管理后台打开连接器,选择 Web,并填写易识别的连接器名称。
- 填写准确的 Base URL。即使后端会把缺失的 scheme 规范化为 HTTPS,也应明确写出
https://,便于审计预期 scheme。 - 按上表范围选择 recursive、single 或 sitemap。Sitemap 模式应填写 sitemap URL,而不是站点首页,除非有意依赖发现逻辑。
- 仅在所需内容需要滚动后才出现时启用抓取前滚动。此设置不会改变 single、recursive 或 sitemap 的 URL 范围。
- 受限内容应选择 OpenCore 私有群组。仅当每个 OpenCore 账号都可以搜索爬取范围内的全部页面时才选择公开。
- 设置刷新与清理选项,创建连接器并运行一次索引。每次刷新都会重新爬取配置范围,而不是应用 HTTP 更新时间窗口。
权限
Web 连接器不会读取或同步源站用户、session、群组、页面 ACL、robots 授权或逐页可见性。当前管理后台访问选择器不把 Web 作为自动同步权限源。
搜索访问仅由连接器的 OpenCore 私有群组或公开模式控制。任何能访问连接器的用户都可以搜索爬虫产生的全部页面,即使该用户无法在浏览器中打开源页面。部署级 OAuth token 还会让这些 worker 上的全部 Web 连接器使用同一个源身份。
不得共享内容的不同受众应使用独立连接器和 OpenCore 私有群组。除非整个输出范围都可以共享给所选 OpenCore 受众,否则不要用此连接器爬取同时包含公开与受限内容的路径。
验证
- 运行连接器,并在 attempt 状态中检查连接、Playwright、TLS、HTTP 或 sitemap 错误。
- 搜索 Base URL 中一个独特标题和句子。确认 navigation、footer、script 与其他忽略内容按预期不存在。
- 对 recursive 模式分别测试一个下级 URL、一个 Base URL 外的同级路径、一个不同 port 的 URL 与一个外部 authority 链接。只有 network authority 规范化后相同的下级 URL 应被索引。
- 对 single 模式确认链接页面不存在。对 sitemap 模式把已索引文档 ID 与 sitemap location 对账,并检查子 sitemap URL 没有被误当作内容页面。
- 如果启用了滚动,请用一个已知的延迟加载句子对比关闭滚动的运行结果。
- 分别测试 HTML 重定向与 PDF 重定向。渲染 HTML 重定向应使用最终 URL 作为文档 ID 与 link;PDF 重定向应保留最初配置的 URL。同时比较重复的渲染 HTML 页面与重复 PDF,因为只有渲染 HTML 使用标题与内容去重。
- 测试每个已分配 OpenCore 群组和一个群组外用户,因为搜索时不会重新向源站授权。