当我使用 ssllabs.com 扫描我已为其安装 SSL 的域之一时,证书 #1 验证正确,等级为“A”,但在结果页面的下方还有一个证书 #2,它似乎是从第一个域中收集的,该域出于某种原因从 apache 配置中配置了 SSL 证书,当然会给出“不匹配”,因为域与证书不匹配。想知道是否有人可以指出配置中的问题。
目前,我正在像这样设置每个为 SSL 托管的域名(域名已更改):
<Directory /home/info/>
Options -Indexes +FollowSymLinks -Multiviews
AllowOverride All
Order allow,deny
allow from all
Require all granted
</Directory>
<VirtualHost _default_:443>
DocumentRoot /home/info/pub/
ServerName domain.at
ServerAlias domain.at www.domain.at
SSLEngine on
SSLCertificateFile /home/info/ssl/at.crt
SSLCertificateKeyFile /home/info/ssl/at.key
SSLCertificateChainFile /home/info/ssl/at.ca
</VirtualHost>
<VirtualHost _default_:443>
DocumentRoot /home/info/pub/
ServerName domain.dk
ServerAlias domain.dk www.domain.dk
SSLEngine on
SSLCertificateFile /home/info/ssl/dk.crt
SSLCertificateKeyFile /home/info/ssl/dk.key
SSLCertificateChainFile /home/info/ssl/dk.ca
</VirtualHost>
<VirtualHost _default_:443>
DocumentRoot /home/info/pub/
ServerName domain.fr
ServerAlias domain.fr www.domain.fr
SSLEngine on
SSLCertificateFile /home/info/ssl/fr.crt
SSLCertificateKeyFile /home/info/ssl/fr.key
SSLCertificateChainFile /home/info/ssl/fr.ca
</VirtualHost>
因此,例如,当使用 ssllabs 扫描“domain.fr”时,它会正确验证 .fr 证书,但随后会继续尝试验证“domain.at”。如果我注释掉“domain.at”配置,它会尝试验证“domain.dk”。为什么会这样?非常感谢您的帮助。