web-dev-qa-db-ja.com

AWSCloudFront-ルートドメインリクエストをリダイレクトします

Serverfaultの初めてのポスター、これが間違った場所にある場合はお詫びします。 AWSCloudFrontにセットアップしようとしているウェブサイトがあります。現在、S3から静的Webコンテンツを提供するように設定されています。これは、CloudFrontを介して取得および提供されます。ただし、rootdomain.comへのすべてのリクエストをrootdomain.com/blogに送信し、そのドメインへの残りのリクエストを通常どおりに処理する必要があります。

これまでのグーグルから、これはlambda @Edgeを使用して達成できるもののようです。しかし、これまでの私の試みはすべて失敗しました。

上記のレイアウトを実現するためにlambda/cf/s3を構成するにはどうすればよいですか?

何か見落としがあった場合はお詫び申し上げます。よろしくお願いいたします。

2
lek

//blogにリダイレクトするだけの場合は、単純なindex.htmlベースのリダイレクトを実行できます。 Lambda @ Edgeは非常に強力なメカニズムですが、ユースケースにとっては非常にやり過ぎです。

リダイレクトにindex.htmlを使用するには、次のようにします。

  1. S3バケットを設定 ウェブサイトホスティングの場合、/へのリクエストが確実にサービスを提供します/index.htmlの内容。

  2. 次のようなコンテンツで/index.htmlファイルを作成してアップロードします。

    <html>
    <head>
    <title>Redirect to /blog</title>
    <meta http-equiv="refresh" content="0; url=/blog" />
    </head>
    <body>
    </body>
    </html>
    

これで、http://rootdomain.com/にリクエストが送信されるたびに、ブラウザは上記のHTMLファイルを受信し、http://rootdomain.com/blogへの更新/リダイレクトに従います。

お役に立てば幸いです:)

1
MLu