0

HTTP 用と HTTPS 用の 2 つの別個のサブドメインを持つサイトを実行しています。

  • http://www.example.com
  • https://secure.example.com

http://secure.example.comは存在せず、解決されません。

問題は、すべての SSL を処理するロード バランサーの背後でサイトが実行されていることです。ロードバランサーと Web サーバー間の通信は常に HTTP です。

そのため、Isapi Rewrite 3 (IIS の mod_rewrite クローン) を使用していくつかのリダイレクトを実装すると、問題が発生します。

Isapi Rewrite に関する限り、HTTPS はオフになっているため、リダイレクトsecure.example.comは失敗しています。

次のようなルールがあるとします。

RewriteRule ^/example/$ /test/ [R=301,L]

をリクエストすると、https://secure.example.com/example/になりたいのですhttps://secure.example.com/test/が、Isapi Rewrite が HTTPS を OFF と見なすため、 になり http://secure.example.com/test/ます。

ドメインがsecure.example.com.

これに沿った何か:

RewriteCond %{SERVER_NAME} secure.example.com
RewriteRule ^/(.*)$ https://secure.example.com/$1

それが機能しないことを除いて-すぐに明示的なリダイレクトを強制しますが、他の処理を続行したいRewriteRules.

ありがとう、

ストゥ

4

1 に答える 1

1

このようなものはどうですか:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^secure\.mydomain\.com$ [NC]
RewriteRule ^/example/$ https://secure.mydomain.com/test/ [R=301,L]
于 2009-07-15T11:01:02.420 に答える