使用 mod_alias 重定向 Apache2 SSL VirtualHost

使用 mod_alias 重定向 Apache2 SSL VirtualHost

我想确保在使用以下方式重定向 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>

所以我的问题是,使用 mod_alias 的 SSL VirtualHost 重定向是否应该Redirect与非 SSL 重定向工作相同?

更新:需要明确的是,我想确保Redirect避免对 SNI/TLS 的需求,尤其是与 WinXP 上的 IE6 相关。在我使用 WinXP-SP3 上的 IE6 进行的测试中,它似乎运行良好(请参阅标记为正确的答案下方的评论)。

答案1

是的,作用是一样的。

x509v3包括主题备用名称。大多数(所有?)颁发 CA 都会在请求的证书中将www.example.comexample.com列为等效备用名称。因此,当在两个 VirtualHost 实例中使用相同的证书时,浏览器不会因名称而受阻。


另一方面,您有:

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

我建议:

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

因为这毕竟是 SSL。

相关内容