对托管在一个 IP 地址上的两个基于名称的网站之一禁用 HTTPS

对托管在一个 IP 地址上的两个基于名称的网站之一禁用 HTTPS

我有一个本地 Apache2 服务器,它在单个 IP 上托管两个基于名称的网站。

第一个网站仅托管在端口 80 上。第二个网站托管在端口 80 和 443 上。如果在端口 80 上访问,用户将被重定向到端口 443。

one.local (仅限 HTTP):

<VirtualHost *:80>

    ServerName one.local
    ServerAlias www.one.local
    DocumentRoot /var/www/html/one

</VirtualHost>

two.local(http 和 https):

<VirtualHost *:80>

    DocumentRoot /var/www/html/two

    ServerName two.local
    ServerAlias www.two.local

    Redirect permanent / https://two.local  

</VirtualHost>

<VirtualHost *:443>

    DocumentRoot /var/www/html/two

    ServerName two.local
    ServerAlias www.two.local

    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/apache.pem
    SSLCertificateKeyFile /etc/apache2/ssl/apache.key

</VirtualHost>

这两个网站都可以使用域名访问,并且 two.local 可以正常重定向。

我遇到的问题是,当访问时https://one.local,用户已连接并提示警告,因为尝试使用Your connection is not secure自签名证书。two.local

我已在这个问题,其中解决方案似乎是再次使用相同的证书并从 https 重定向到 http。

这个问题三年前就有人问过了,更好的这个问题的解决方案是什么?

相关内容