2009-07-15 3 views
0

Я запускаю сайт, который имеет 2 отдельных поддомена - один для HTTP и другой для HTTPS.Isapi Rewrite - сохранение HTTPS в перенаправлении за балансиром нагрузки

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

http://secure.example.com не существует и не будет решать.

Проблема в том, что сайт работает за балансировщиком нагрузки, который обрабатывает все SSL. Связь между балансировщиком нагрузки и веб-серверами всегда в HTTP.

Таким образом, при использовании Isapi Rewrite 3 (клон mod_rewrite для IIS) для реализации некоторых перенаправлений я столкнулся с проблемой.

Что касается 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/.

Есть ли способ заставить перенаправления быть HTTPS, если домен secure.example.com?

Что-то вдоль линий этого:

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

Кроме того, что не работает - она ​​сразу заставляет явное перенаправление, в то время как я хочу продолжить обработку других RewriteRules.

Спасибо,

Stu

ответ

1

Как насчет чего-л, как это:

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^secure\.mydomain\.com$ [NC] 
RewriteRule ^/example/$ https://secure.mydomain.com/test/ [R=301,L] 
+0

Благодаря человеку - это действительно работает! Я надеялся, что есть способ запустить проверку домена за один раз, а не перед каждым правилом - иначе мой файл .htaccess станет довольно раздутым! Возможно, это слишком много надеется ... – stubotnik

+0

Если вы введете эти правила в .htaccess в корень secure.example.com, вы можете вообще опустить проверку хоста. – TonyCool

+0

Я слышал, вы, к сожалению, в настоящее время ограничены использованием того же файла .htaccess на защищенных и www-доменах. Отметьте это как ответ - спасибо за помощь! – stubotnik

 Смежные вопросы

  • Нет связанных вопросов^_^