cloudflare/vinext

Bot/crawler detection does not block fallback HTML on prerender

已關閉

#1,543 建立於 2026年5月22日

 (0 則留言) (0 個反應) (0 位負責人)TypeScript (371 個分叉)github user discovery
adapter-api-e2ehelp wanted

倉庫指標

星標
 (8,563 顆星)
PR 合併指標
 (平均合併 1天 1小時) (30 天內合併 462 個 PR)

描述

This issue was created by an agent analysing CI failures from the Next.js Deploy Suite (vinext main vs Next.js v16.2.6, 2026-05-22).

Problem

When fallback: true static params encounter a crawler bot user-agent, Next.js renders the page synchronously instead of serving the fallback shell. vinext serves the fallback HTML containing Loading... to crawlers, which is bad for SEO.

Expected substring: not "Loading..."; received fallback shell

Estimated Impact

~1 test failures across the deploy suite.

Affected Test Suites

  • test/e2e/prerender-crawler.test.ts

Recommendation

  1. Reproduce first in vinext's own test suite. Request a fallback: true page with a Googlebot UA and assert the body does not contain the fallback text.

  2. Switch to synchronous render for known crawler UAs. When the UA matches the Next.js bot list and the page would otherwise serve a fallback shell, render synchronously instead.


Part of #1328.

貢獻者指南