Next.js 16 で middleware.ts が proxy.ts に名称変更
Next.js
Next.js 16 で middleware.ts が proxy.ts にリネームされた。機能は基本的に同じ。
変更点:
| 項目 | middleware.ts | proxy.ts |
|---|---|---|
| Next.js | ~15.x | 16.0.0~ |
| 関数名 | middleware() | proxy() |
| ランタイム | Edge Runtime | Node.js Runtime |
名称変更の理由:
- Express.js の middleware との混同を避けるため
- 「proxy」という名称でネットワーク境界であることを明示
- 2025年3月に発見されたセキュリティ脆弱性(
x-middleware-subrequestヘッダーによる認証バイパス)への対応
移行方法:
手動の場合:
middleware.ts→proxy.tsにリネームexport function middleware()→export function proxy()に変更