同一個網址兩種格式:App Router 配 CDN 之前一定要確認的一件事
Next.js App Router 的同一個網址會回 HTML,也會回 RSC payload。CDN 不看 Vary、又把 query string 丟掉的話,CDN 會把兩種當成同一份存起來。附上兩個 curl 的驗證方法。
12 篇 · 最近更新 2026-11-01
Next.js App Router 的同一個網址會回 HTML,也會回 RSC payload。CDN 不看 Vary、又把 query string 丟掉的話,CDN 會把兩種當成同一份存起來。附上兩個 curl 的驗證方法。
同一個 Next.js 版本、同一份 benchmark,兩輪平均回應差了六倍。整理那幾份效能比較各自測了什麼,以及我們把 INP 修完,實驗室少了八成、真人沒有變快的那一次。
有獨立後端的內容網站用 Next.js,很多功能根本用不到。但有些行為關不掉,廣告曝光和 PV 的做法也得跟著改。記錄我在一個接手的 App Router 專案上看到的取捨。
後端上線後照慣例 purge CDN,結果頁面還是舊的。從一個沒意義的 query string 追到 Next.js 的整頁快取,最後決定把快取全部交給 CDN。理由跟效能無關,是出事的時候有沒有辦法手動清掉。
把部落格從 Next.js 15 App Router + Contentlayer 搬到 Astro 6:34 篇文章、URL 全保留,搬家一天做完,真正卡住我的是 island 邊界和部署平台的四個坑。
用 Firebase Remote Config 做功能開關的理由、業界其他選擇的取捨,以及實作上 fetch 失敗的 fallback、'use client' 傳染、isolatedModules 的小雷。
在 K8s 混合 amd64/arm64 節點的環境下,Next.js 的 buildId 不一致導致靜態資源 403,記錄排查過程和修復方式