我使用CentOS 6在同一台服务器上有多个虚拟主机。运行sudo ./path/to/certbot-auto --apache
后,我已成功为网站https://domain1.example
安装了证书。浏览器确认证书颁发给Common Name(CN)domain1.example
。
但是,在对domain2.example
重复相同的过程后,浏览器会警告连接不安全,并且证书发布到公共名称192.168.1.5
,这是服务器的本地IP地址。为什么domain2.example
没有正确确定公共名称?可能是什么原因?
没有https://
网站http://domain2.example
工作正常。
事实证明问题是由于/etc/httpd/conf.d/ssl.conf
文件为Apache启用了SSL。由于CentOS按字母顺序加载所有Apache conf文件,因此只有那些conf文件将使用SSL,它按字母顺序排在ssl.conf
之后。以前的所有文件都不会被SSL识别。
在我的情况下,domain1.example
的conf文件来自ssl.conf
,因此被认可为SSL。但domain2.example
的conf文件在ssl.conf
之前,因此被忽略了。一个简单的重命名ssl.conf
到000-ssl.conf
将该文件放在列表的顶部,所有其他文件都正确加载。