将旧 https 域名重定向到新 https 域名

将旧 https 域名重定向到新 https 域名

我已经为一家小型企业设置了一个新域名,他们希望将其添加到https://他们的域名中,因为他们之前的主机默认提供了该域名(之前的主机也有旧域名)。

当我设置我的服务器配置块时,/etc/apache2/sites-available/我将所有请求转发到新域,如下所示:

<VirtualHost *:80>
    # example2 - NEW, example1 - OLD
    # Simply redirecting all traffic to https
    ServerName example2.com
    ServerAlias www.example2.com
    ServerAlias example1.com
    ServerAlias www.example1.com

    Redirect 301 / https://example2.com/

</VirtualHost>

<IfModule mod_ssl.c>

<VirtualHost *:443>
    ServerAdmin [email protected]
    ServerName example2.com

    DocumentRoot /var/www

    SSLEngine on
    SSLCertificateFile /path/to/ssl/example2/example2.crt
    SSLCertificateKeyFile /path/to/ssl/example2/example2.com.key

    SSLCACertificateFile /path/to/ssl/example2/example2.com-bundle
</VirtualHost>

<VirtualHost *:443>
    # If the old site is arrived at via HTTPS, redirect to new
    ServerName example1.com
    ServerAlias www.example1.com

    Redirect 301 / https://example2.com/
</VirtualHost>
</IfModule>

因此,请求http://example2.comhttp://example1.com正在运行并重定向至https://example.com。但是,请求https://example1.com不会重定向至https://example2.com相反,他们向最终用户显示“可怕的屏幕”,警告他们连接可能不是私密的,等等。(谷歌浏览器)

旧域名 (example1.com) 的 DNS 区域文件指向 example2.com 服务器的 IP,我以为我的服务器配置正确。为什么除了旧网站的 https:// 之外,其他一切都正确重定向?

答案1

请求https://example1.com不会重定向至https://example2.com相反,他们向最终用户显示“可怕的屏幕”,警告他们连接可能不是私密的

这是你的问题:

<VirtualHost *:443>
    # If the old site is arrived at via HTTPS, redirect to new
    ServerName example1.com
    ServerAlias www.example1.com

    Redirect 301 / https://example2.com/
</VirtualHost>

这是与 HTTPS 端口 (443) 和 example1.com 匹配的虚拟主机,但是没有为 vhost 运行 TLS。(请记住,您可以在任何您喜欢的端口上运行纯文本 HTTP 或加密的 HTTPS。在端口 443 上运行纯文本 HTTP 是不寻常的,但任何标准都不禁止,所以 Apache 允许您这样做。)

获取 example1.com 和 www.example1.com 的有效证书,然后向该虚拟主机添加类似这样的内容:

SSLEngine on
SSLCertificateFile /path/to/ssl/example1/example1.crt
SSLCertificateKeyFile /path/to/ssl/example1/example1.com.key
SSLCACertificateFile /path/to/ssl/example1/example1.com-bundle

而且它应该能更好地发挥作用。

作为与您的具体问题无关的补充一点,除非您完全重新设计了 URL,否则请尽力将人们重定向到新域名上的相应位置,而不仅仅是首页。破坏每个人现有的链接是非常烦人的,所以只有在绝对必要时才这样做。

相关内容