ロードバランサーにSSLターミネーションを実装すると、複数のサーバーが暗号化されたトラフィックと暗号化されていないトラフィックの両方を受信できるようになります。Apache®Webサーバーノードで2つを区別する場合は、X-Forwarded-Proto
をフィルタリングする必要があります。 RequestHeader
を使用したHTTPヘッダー プロトコルのそれぞれのVirtualHost
のディレクティブ 次の例に示すように、ブロックします。
<VirtualHost *:80>
RequestHeader set X-Forwarded-Proto "http"
…
</VirtualHost>
<VirtualHost *:443>
RequestHeader set X-Forwarded-Proto "https"
…
</VirtualHost>
すべてのトラフィックを暗号化するには、HTTP VirtualHost
内に書き換えルールを追加する必要があります 次の例に示すように、ブロックします。
<VirtualHost *:80>
RequestHeader set X-Forwarded-Proto "http"
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
…
</VirtualHost>
コメントや質問をするには、[フィードバック]タブを使用します。私たちと会話を始めることもできます。