状況説明
AWSを例にすると、ELB(Elastic Load Balancing)でACM(AWS Certificate Manager)を利用してSSLを応答させ、サーバ側ではSSLの処理を無くすということしている環境が多いと思います。
- メリット
- SSLの処理は負荷が高いのでサーバから切り離した方が良い
- サーバ側でSSL証明書を管理すると煩雑になるのを防ぐことができる
このとき、サーバ側では、ポート番号を443ではなく、8443や8080など異なるポートにするケースが多いと思います。
そのような環境にしていた場合、リダイレクト時にクライアントにサーバが応答していたポート番号で返してしまいますので、それを防ぐための設定方法。
設定方法
Apache
ServerNameを下記のようにする。
<VirtualHost *:8443>
ServerName https://www.piteki.com:443
</VirtualHost>
nginx
serverディレクティブに下記を追記
server {
port_in_redirect off;
}
出典
うまいぼう兄貴に教わっていたけど、良く忘れるので自分の方にnginx含めてメモ。(ほげーってwww中身めっちゃ丁寧に書いてるのに、1ミリも伝わってこないw)
うまいぼうぶろぐ
ほげー
コメント