S3 バケット間でトラフィックを分割する

S3 バケット間でトラフィックを分割する

私は静的S3サイトを持っており、 S3bucket_oldでルートごとに再構築します。bucket_new絞殺パターン

  • URL /home/contactマップ先bucket_new

  • その他のURLはすべてbucket_old

bucket_old一部のリクエストを にルーティングし、他のリクエストをにルーティングするには、どの AWS インフラストラクチャを使用する必要がありますかbucket_new? 理想的には、どのパスがどこに行くかを変更するには、構成を更新/デプロイするだけで済みます。

答え1

AWS CloudFront を使用すると、異なるオリジンから異なるパスを提供できます。このブログ投稿をご覧ください参照用にコピー

  1. CloudFront コンソールからウェブディストリビューションを開きます。
  2. Origins ビューを選択します。
  3. S3 バケット用に 1 つのオリジンを作成し、ロード バランサー用に別のオリジンを作成します。注: カスタム オリジン サーバーまたは S3 ウェブサイト エンドポイントを使用している場合は、[オリジン ドメイン名] フィールドにオリジンのドメイン名を入力する必要があります。
  4. ディストリビューションから、「動作」ビューを選択します。
  5. すべての静的コンテンツ リクエストを S3 バケットにルーティングするためのパス パターンを指定する動作を作成します。たとえば、「images/*.jpg」パス パターンを設定すると、images ディレクトリ内の「.jpg」ファイルに対するすべてのリクエストが S3 バケットにルーティングされます。
  6. デフォルト (*) パス パターンの動作を編集し、そのオリジンをロード バランサーとして設定します。

関連情報