0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:ローカル開発 (Vite) vs 本番環境 (S3 + CloudFront) の違いを自分なりにまとめてみた

Posted at

はじめに

ローカル環境で動作するフロントエンドを AWS 上に移行する際には、いくつか注意点があります。

特に、S3 + CloudFront でのホスティングはローカル開発環境と異なる点が多く、事前の準備が重要です。

本記事では、ローカル開発(Vite)と本番環境(S3 + CloudFront)の違いを整理し、移行時のポイントをまとめました。

書こうと思ったきっかけ

フロントエンドの AWS 環境移行について、知識が浅い状態で実施することに不安を感じました。

ローカル環境と本番環境の違いを明確に理解し、スムーズに移行できるよう備忘録として整理しました。

特に S3 + CloudFront でのルーティングやキャッシュ、CORS 設定など、重要なポイントを押さえたかったです。間違いがあれば修正したいので、認識の確認も兼ねてまとめています。

ローカル開発 (Vite) vs 本番環境 (S3 + CloudFront) の違い

項目 ローカル開発 (Vite) 本番環境 (S3 + CloudFront)
URL http://localhost:5173/ https://honda333.blog/
実行方法 npm run dev (Vite) npm run build → S3 にアップロード
サーバー Vite の開発サーバー (Vite Dev Server) S3 + CloudFront(CDN 経由で配信)
リロード ホットリロード (HMR) あり ホットリロードなし(変更時はデプロイが必要)
パフォーマンス ローカルのみ CDN キャッシュで高速配信
CORS (クロスオリジン制約) なし(ローカル環境) API との通信には CORS 設定が必要
ルーティング (React Router) localhost では react-router-dom が動作 CloudFront + S3 では index.htmlerror_document に設定する必要あり
環境変数 .env.development を使用 (import.meta.env) .env.production を使用 (import.meta.env)

フロントエンドについてあまり詳しくないまま質問させていただいていますが、ローカル環境で動作しているものを AWS 上に移行する際には、バックエンドと同様にいくつか注意すべき点があると考えています。

自分なりに備忘録としてまとめてみましたので、認識として合っているかご確認いただけると幸いです。

AWS 環境移行時の主な注意点

1. ビルドとデプロイの違い

ローカル環境では npm run dev で開発サーバーを起動できますが、本番環境では npm run build でビルドしたファイルを S3 にアップロードする必要があります。

2. S3 バケットの設定

S3 にホストする際には、index.html をデフォルトのルートオブジェクトに設定し、適切なパブリックアクセス許可を設定する必要があります。

3. CloudFront の設定

CloudFront を利用する場合、index.html をエラーページとして設定することで React Router のルーティングが機能するようになります。

4. CORS 設定

API との通信を行う場合、S3 や API Gateway 側で CORS 設定を適切に行う必要があります。

5. キャッシュの管理

CDN キャッシュが効いているため、変更が即時反映されない場合があります。キャッシュクリアやバージョニングの工夫が必要です。

まとめ

AWS へのフロントエンド移行では、ビルド方法やデプロイ手順、S3・CloudFront の設定に注意が必要です。

特に、CORS 設定や React Router のルーティング、キャッシュ管理はローカル環境とは異なる点です。

移行時に戸惑わないよう、事前に環境の違いを理解し、適切な設定を行うことが重要です。今後も AWS のフロントエンド環境について学びながら、よりスムーズな運用を目指していきます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?