【AWS/ALB】http→httpsにリダイレクトする
なんでhttpからhttpsにリダイレクトするの?(AWSに限らず)
「古いURL(HTTP)にアクセスされることを防ぐため」がしっくりくる
https://knowledge.cpi.ad.jp/howto-cpi/242/
あとはgoogleに評価されているのも一因かな
手順
HTTPリスナー作成
(任意)HTTPS作成時に消していたら作成する
ルール作成
パス:*(もしくはデフォルトのリスナールールを書き換える)
リダイレクトを選択し、プロトコル(HTTPS)、ポート(443)、パス、ステータスコードを選択
動作確認
code:curl
$ curl -s http://<domain> -I -L
HTTP/1.1 301 Moved Permanently
Server: awselb/2.0
...
Location: https://<domain>443/
HTTP/2 200
...
httpでアクセスし、301でhttpsにリダイレクトされればOK
Locationヘッダはリダイレクト先のURLを表すため、HTTPSになることを確認する
https://developer.mozilla.org/ja/docs/Web/HTTP/Headers/Location
参考
https://aws.amazon.com/jp/premiumsupport/knowledge-center/elb-redirect-http-to-https-using-alb/
https://dev.classmethod.jp/articles/alb-redirects/
AWS_ALB