配下全体への一括ガードは個別ページでなく共通の layout(Server Component)で行う
React
フロントエンド
設計
特定ルート配下全体に同じガード(例: モバイル端末なら 404 を表示)をかけたい場合、個別ページでなく共通の layout に閉じて実装すると一括適用できる。Next.js App Router なら layout.tsx を Server Component のまま headers() で user-agent を読み、判定に該当すれば notFound() を呼ぶ。クライアント側 redirect より初期描画のちらつきを避けられ、認証状態や権限に関係なくサーバー側で明示的に弾ける。