我在服务器上配置了三个站点(SITE1、SITE2、SITE3),并使用 let's encrypt 保护了所有站点。其中两个站点运行正常。但其中一个站点(SITE1)在通过 HTTPS(自签名证书)连接时显示“此连接不受信任”错误。
问题可能是服务器的主机名等于 SITE1,而我无法更改它(这是一个虚拟容器)。因此,/etc/httpd/conf.d/ssl.conf
对 SITE1 使用默认配置 ( ),而不是自定义配置 ( /etc/httpd/sites-enabled/SITE1-le-ssl.conf
)。
我如何强制 apache 对 SITE1 使用自定义配置而不是默认配置?
httpd -S 的输出:
VirtualHost configuration:
*:443 is a NameVirtualHost
default server SITE1 (/etc/httpd/conf.d/ssl.conf:56)
port 443 namevhost SITE1 (/etc/httpd/conf.d/ssl.conf:56)
port 443 namevhost SITE2 (/etc/httpd/sites-enabled/SITE2-le-ssl.conf:2)
alias www.SITE2
port 443 namevhost SITE3 (/etc/httpd/sites-enabled/SITE3-le-ssl.conf:2)
alias www.SITE3
port 443 namevhost SITE1 (/etc/httpd/sites-enabled/SITE1-le-ssl.conf:2)
alias www.SITE1
*:80 is a NameVirtualHost
default server SITE2 (/etc/httpd/sites-enabled/SITE2.conf:1)
port 80 namevhost SITE2 (/etc/httpd/sites-enabled/SITE2.conf:1)
alias www.SITE2
port 80 namevhost SITE3 (/etc/httpd/sites-enabled/SITE3.conf:1)
alias www.SITE3
port 80 namevhost SITE1 (/etc/httpd/sites-enabled/SITE1.conf:1)
alias www.SITE1
答案1
删除 /etc/httpd/conf.d/ssl.conf 中可能存在的任何 Listen 或 Virtualhost 声明。
另外,请确保 /etc/httpd/sites-enabled/SITE1.conf 具有正确的 ServerName/ServerAlias。