1

ロードバランサーの背後で実行されている NGINX サーバーがいくつかあります。

https 経由で任意のドメインのすべての着信要求を 10.xxx:443 (master_ip:443) に送信するように varnish に指示するにはどうすればよいですか? 中央システムで多くのサイトを処理するため、何らかのパターンが必要になります。

4

1 に答える 1

3

このリダイレクトを開始点として試し、マルチサイト設定に合わせてカスタマイズしてください:

sub vcl_recv {
    if ( (req.http.host ~ "^(?i)somesite.org" || req.http.host ~ "^(?i)www.somesite.org")
         && req.http.X-Forwarded-Proto !~ "(?i)https") {
        set req.http.x-Redir-Url = "https://www.somesite.org" + req.url;
        error 750 req.http.x-Redir-Url;
    }
}

sub vcl_error {
    if (obj.status == 750) {
        set obj.http.Location = obj.response;
        set obj.status = 302;
        return (deliver);
    }

このリンクから参照:

SSL が有効になっている nginx インスタンスなど、SSL ターミネーション ポイントの背後でワニス インスタンスが実行されている場合に、クライアントをサイトの SSL バージョンにリダイレクトする場合に便利です。

于 2013-09-29T08:37:03.857 に答える