Pages Router: CSS files with URL-encoded characters in path not served / not applied
#1,472 建立於 2026年5月22日
倉庫指標
- 星標
- (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
mainvs Next.jsv16.2.6, 2026-05-22).
Problem
A page importing CSS via a path that contains special characters (URL-encoded) should produce a blue background. The test observes the default transparent background, meaning the CSS resource at the URL-encoded path is either not served or the asset URL is encoded incorrectly so the browser never loads the file.
Expected background `rgb(0, 0, 255)`, received transparent
Estimated Impact
~1 test failures across the deploy suite.
Affected Test Suites
test/e2e/app-dir/resource-url-encoding/resource-url-encoding.test.ts
Recommendation
-
Reproduce first in vinext's own test suite. Add a Pages Router fixture that imports
./styles/with space.cssand assert the rendered page has the expected colour. -
Round-trip the encoding. Make sure the emitted
<link rel="stylesheet" href=...>URL is URL-encoded and that the static-asset server decodes paths before lookup, so the encoded URL resolves to the file on disk.