Amazon S3の静的ウェブサイトホスティングで、クエリパラメータが消える
事象
クエリパラメータを付与した状態のURLに直打ちでアクセスするとクエリパラメータが消えてしまう。
具体的には、以下のようにリダイレクトされる。
原因
以下のような流れで、ファイルを探しにいっている。
- https://xxxxxxxxxx.cloudfront.net/testというファイルがあればそれを表示する。
- https://xxxxxxxxxx.cloudfront.net/test/に「index.html」ファイルがあればそれを表示する。
※S3のStatic website hostingのインデックスドキュメントの設定を「index.html」とした場合。 - どちらも存在しない場合は、エラーとなる。
そのため、事象に書いたような形でクエリパラメータを渡すと1から2の流れで、リダイレクトされてクエリパラメータが消えてしまう。
解決策
クエリパラメータの前にスラッシュをつけるようにする。