プロジェクトの段階的マイグレーション: プロキシによるドメイン統合
- 自社の管理サービスの技術スタックを Next.js の Page Router から App Router へマイグレーションすることを決定した
- 自社のテックチームは既存の Page Router アプリのコードをそのまま維持し、新しく作るページから一つずつ App Router へマイグレーションしたいと考えていた
- そのため、既存の Page Router アプリと新しい App Router アプリを別々のドメインでデプロイした後、Vercel Proxy を利用して 1 つのドメインに統合した
- Proxy 設定により、
/new で始まるすべてのパスは新しいアプリへ rewrite され、それ以外のすべてのパスは既存アプリへ rewrite される
認証が 2 つのアプリで維持される理由
- 既存アプリだけでなく、新しいプロジェクトでも認証が維持されるのはなぜだろうか?
- 自社の管理サービスはセッションクッキー認証方式で実装されている
- さらにバックエンドで CORS 設定をしていないため、サーバーと同じドメインでのみクッキーにアクセスできる
- 既存アプリにログインページがある。では新しいアプリで API リクエストを行う際、ブラウザがセッションクッキーを送信できず認証の問題が発生するだろうか?
- 結論から言うと、問題はない
- その理由は、Proxy 設定によって 2 つのアプリが 1 つのドメイン A に統合されているためである
- ログインすると、ブラウザはクッキーをドメイン A に保存し、その後のすべてのリクエストにセッションクッキーを自動的に含める
まだコメントはありません。