我为一家小型企业设置了一个新域,他们希望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.com和http://example1.com的请求正在工作并重定向到https://example.com。但是,对https://example1.com的请求不会重定向到https://example2.com,而是向最终用户显示“可怕的屏幕”,警告他们连接可能不是私有的,等等。 (谷歌浏览器)
旧域(example1.com)的 DNS 区域文件指向 example2.com 服务器的 IP,我认为我的服务器配置已正确完成。为什么除了旧站点的 https:// 之外的所有内容都正确重定向?