我在Apache服务器(例如http://www.example.com )上托pipe多个网站,其中只有一个网站具有SSL证书(例如https://www.example.net )。 是否可以设置Apache,以便尝试浏览到https://www.example.com不会导致Apache服务https://www.example.net ? 如果是这样,怎么样?
我问这是因为我的托pipe服务提供商说:
…如果SSL连接尝试到服务器上的任何IP,并且没有可用于该域的SSL虚拟主机,则连接到列出的第一个可用的SSL虚拟主机。 …如果机器上有多个SSL虚拟主机,当它们不匹配时,会自动连接到httpd.conf文件中显示的第一个。
默认情况下,根本不会得到redirect,但是作为您的托pipe服务提供商说明:如果没有为域名configuration虚拟主机,则第一个VirtualHost是默认显示。 这是你忽略了你的Web浏览器生成的SSL警告之后…
如果您只启用了www.example.net SSL / TLS,即连接到https://any-domain或https://<ip-address of your server>时将显示的站点。
由于这个原因,在你的有效域的VirtualHost节之前build立一个空白网站作为第一个VirtualHost是很常见的。
<VirtualHost *:443> ServerName localhost DocumentRoot /var/www/empty </VirtualHost> <VirtualHost *:443> ServerName www.example.net DocumentRoot /var/www/example.net </VirtualHost>