https://www.domain.com将不会redirect到VPS上的https://domain.com

我有这个在我的Apacheconfiguration文件:

<VirtualHost *:80> other stuff here Redirect permanent / https://example.com/ </VirtualHost> 

这很好。 它redirect所有www.example.com => https://example.com 。 但问题是如果访问者键入https://www.example.com那么redirect不会发生。

我在443 VirtualHost下添加了相同的行

 <VirtualHost *:443> other stuff here Redirect permanent / https://example.com/ </VirtualHost> 

但是这不具有任何想法相同的效果吗?

 <VirtualHost *:443> other stuff here Redirect permanent / https://example.com/ </VirtualHost> 

假设你的SSL证书同时覆盖www子域名和apex域名,那么这就是你的“其他东西”,在这里很重要 – 这将决定你哪个主机redirect。

如果访问者键入https://www.example.com则redirect不会发生。

为了实现这一点,您需要有一个专门用于端口443的VirtualHost容器, 覆盖主机www.example.com (即包含www子域)。 这应该是一个单独的VirtualHost设置只是为了redirect。 例如,这将需要包含适当的ServerNameServerAlias指令:

 ServerName www.example.com 

443 VirtualHost下添加了相同的行

您将需要两个虚拟主机端口443.一个用于redirect的www.example.com (如上所述),另一个用于包含所有configuration的规范example.com