Docsearch Typesense爬虫仅抓取Docusaurus首页内容求助
Docusaurus 3.9 + Typesense DocSearch 爬虫仅索引首页内容问题
问题描述
使用Docusaurus 3.9搭配Typesense及docsearch-typesense-scraper为文档站点建立索引时,站点地图可被正确识别,爬虫能生成记录,但所有索引记录均来自首页——尽管站点地图包含多个不同文档URL。手动访问各页面内容正常,但爬虫获取所有URL时均返回首页HTML。
环境配置
- Docusaurus版本:3.9
- 部署方式:静态构建(
npm run build)后在80端口部署 - 站点地图可正常访问,内容正确,已遵循Typesense官方DocSearch指南配置
已尝试方案
- 使用Docusaurus专属配置并按官方指南调整
- 采用极简选择器配置
- 将构建后的站点公开部署后使用极简配置,问题仍未解决
可能的排查方向及解决方案
1. 验证服务器路由配置是否正确
静态部署Docusaurus站点时,若服务器(如Nginx、Apache)的路由规则错误,会导致所有非静态资源请求都返回首页index.html:
- 用
curl命令直接请求站点地图中的文档URL,例如:
查看返回的HTML内容是否为对应文档页面。如果返回首页,说明服务器路由配置有误。curl http://your-domain/docs/example-page - 以Nginx为例,需确保配置优先返回已生成的静态HTML文件,再处理单页应用路由:
location / { try_files $uri $uri.html $uri/ /index.html; }
2. 检查站点地图中的URL格式
确保站点地图里的所有URL都是绝对路径,且包含正确的baseUrl(若Docusaurus配置了非根路径的baseUrl):
- 若
docusaurus.config.js中baseUrl: "/docs/",站点地图里的URL应为http://your-domain/docs/example-page,而非相对路径或缺失baseUrl的路径。
3. 开启爬虫调试日志排查请求逻辑
启动爬虫时添加--verbose参数,查看实际请求的URL及返回内容:
- 确认爬虫是否请求了正确的文档路径,是否存在路径拼接错误
- 检查返回的HTML内容是否确实为首页,以此区分是服务器问题还是爬虫配置问题
4. 验证Docusaurus静态构建产物
查看build目录下是否生成了对应文档页面的HTML文件,例如build/docs/example-page.html:
- 若文件不存在,说明Docusaurus构建时未生成对应页面,需检查文档路由配置或构建命令是否正常执行
内容的提问来源于stack exchange,提问作者Erwin
相关产品推荐
相关产品推荐

