我强制所有对 phpMyAdmin 的访问都通过 HTTPS,但是在证书方面遇到了一些麻烦。
我已经生成了 SSLCertificateFile 和 SSLCertificateKeyFile,并且在我的 ssl.conf 文件中引用了这两个文件的位置。
我遇到的问题是网站正在查看<VirtualHost _default_:443
> 中定义的默认 SSLCertificate。我已在块中定义了一个特定的 SSLCertificate <VirtualHost *:443>
。
我<VirtualHost>
的 ssl.conf 文件中的块如下:
<VirtualHost *:443>
DocumentRoot /var/www/html/phpMyAdmin
ServerName www.example.com
SSLEngine on
SSLCertificateFile /etc/httpd/conf/ssl.crt/phpmyadmin.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/phpmyadmin.key
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
</VirtualHost>
知道为什么会这样吗?
谢谢
答案1
听起来您有两个相互冲突的默认证书,用于在端口 443 上使用。它只能使用一个(缺少 SNI);为什么您觉得它应该选择您的证书而不是默认证书?
尝试注释掉该<VirtualHost _default_:443>
部分。