我有一个服务器,那里有很多域,其中一个是ssl安全的。
如果我使用任何其他带有https://的域,它会显示ssl安全站点的内容。
在我的conf中,我使用
<VirtualHost *:443>
ServerName www.example.com
DocumentRoot /home/domains/example.com/web/public/www/
SSLEngine on
SSLCertificateFile /home/domains/example.com/web/ssl/www.example.com.crt
SSLCertificateKeyFile /home/domains/example.com/web/ssl/www.example.com.key
SSLCertificateChainFile /home/domains/example.com/web/ssl/www.example.com.ca
# SSLCACertificateFile /home/domains/example.com/web/ssl/www.example.com.ca
ErrorLog /home/domains/example.com/web/log/error.log
CustomLog /home/domains/example.com/web/log/access.log combined
</VirtualHost>
我发现这可能是问题所在,但我没有找到任何方法来解决它
有人能告诉我如何解决它吗,或者指导我找到合适的文档?
谢谢。
这可能是因为
ServerName继承
最好始终在每个基于名称的名称中显式列出ServerName虚拟主机。如果VirtualHost没有指定ServerName名称将从基本服务器配置中继承。如果没有服务器名称是全局指定的,在启动时通过检测到一个第一个侦听地址的反向DNS解析。在任何一种情况下,此继承的服务器名称将影响基于名称的虚拟主机解析,因此最好始终在中显式列出ServerName每个基于名称的虚拟主机。
Soruce Apache Docs
因此,请尝试使用此条目明确定义ServerName条目
<VirtualHost *:443>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /www/domain
</VirtualHost>