特定のhttp URLを最初に同等のhttpsにリダイレクトしてから、まったく別のhttps URLにリダイレクトする必要があります。なぜ元のhttpを最終的なhttps URL、これはクライアントが望むものであり、クライアントは常に正しいです!)。また、元のhttpsを別のhttpsにリダイレクトする必要があります。haproxyスキームとロケーションの両方を一緒にリダイレクトする
だから、私は必要なもの=>https://foo.bar.comhttp://foo.bar.comをリダイレクトして、=>https://another.foobar.comhttps://foo.bar.comする機能であるだけでなく、=>https://another.foobar.comhttps://foo.bar.comをリダイレクトします。
現在ちょうどhttps://foo.bar.com =>https://another.foobar.comをリダイレクトする私は、この使用しています:ポート443上の最初のバインドで
acl is_new_portal hdr(host) -i foo.bar.com
redirect location https://another.foobar.com code 302 if is_new_portal
を、と私は私が使用するhttpをhttpsにリダイレクトするために知っている:
redirect scheme https code 302 if !{ ssl_fc }
(最終的にanother.foobar.comが削除されるため、301ではなくコード302が使用されるため、リダイレクトはクライアントのブラウザに永続的にキャッシュされません)
しかし、私は両方の再配置を行うことができる必要があり、私はどのように2つを組み合わせるか分からないのですか?
リダイレクトが両方とも実行されるかどうかはわかりませんでしたが、提案のおかげです。 Strict-Transport-Security: "max-age = 31536000"の設定で作業する必要もありますが、私は同じフロントエンドに追加することができます。 – HelenH
@HelenHうん、私はちょうど私の答えにそれを追加しました。私はあなたのケースでは 'if {ssl_fc}'が必要であるとは確信していません – ITChap