Назад | Перейти на главную страницу

Перенаправить виртуальный хост Apache2 SSL с помощью mod_alias

Я хочу убедиться, что при перенаправлении 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 все работает нормально (см. Комментарии под ответом, помеченным как правильный).

Да, работает так же.

x509v3 включает Альтернативное имя субъекта. Большинство (всех?) Выдающих центров сертификации будут перечислять оба www.example.com и example.com как эквивалентные альтернативные имена в сертификате, запрошенном для любого из них. Из-за этого браузеры не будут подавляться именем при использовании одного и того же сертификата в обоих экземплярах VirtualHost.


С другой стороны, у вас есть:

Redirect 301 / http://www.example.com/

Вместо этого я бы порекомендовал:

Redirect 301 / https://www.example.com/

Потому что это является SSL все-таки.