
Я хочу убедиться, что не возникнет никаких странных явлений при перенаправлении SSL VirtualHost с помощьюmod_alias Redirect
какApache описал здесь.
Мой код, кажется, работает, но поскольку виртуальные хосты SSL ограничены только одним IP-адресом, я хочу убедиться, что нет никаких проблем, которые бы меня обошли. Явно не использую TLS. Я пока застрял с Apache 2.2.
<VirtualHost *:443>
ServerName example.com
SSLEngine On
SSLCertificateFile /path/to/example.com-crt.crt
SSLCertificateKeyFile /path/to/example.com-key.key
SSLCACertificateFile /path/to/example.com-ca.txt
Redirect 301 / https://www.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com
SSLEngine On
SSLCertificateFile /path/to/example.com-crt.crt
SSLCertificateKeyFile /path/to/example.com-key.key
SSLCACertificateFile /path/to/example.com-ca.txt
# Do stuff
</VirtualHost>
Итак, мой вопрос: должно ли перенаправление SSL VirtualHost с mod_alias Redirect
работать так же, как перенаправление без SSL?
ОБНОВЛЯТЬ:Чтобы внести ясность, я хочу убедиться, что Redirect
обходит необходимость в SNI/TLS, особенно в отношении IE6 на WinXP. Кажется, работает нормально в моих тестах с IE6 на WinXP-SP3 (см. комментарии под ответом, помеченным как правильный).
решение1
Да, это работает так же.
x509v3 включает в себяАльтернативное имя субъекта. Большинство (все?) выдающих CA будут перечислять оба www.example.com
и example.com
как эквивалентные альтернативные имена в сертификате, запрашиваемом для любого из них. Благодаря этому браузеры не будут подавляться именем при использовании одного и того же сертификата в обоих экземплярах VirtualHost.
С другой стороны, у вас есть:
Redirect 301 / http://www.example.com/
Вместо этого я бы рекомендовал:
Redirect 301 / https://www.example.com/
Потому что этоявляетсяSSL в конце концов.