Apache SSL 证书链无效,其中“https://www”

Apache SSL 证书链无效,其中“https://www”

我的网站在 Apache 设置中为虚拟主机安装了 SSL 证书。它会重定向httphttpshttps://sitename.com但由于某种原因,当用户明确输入wwwhttps://www.sitename.com“,我收到无效证书错误。

http://www.sitename.com可以工作,但是一旦使用 https,一切都会中断。

这是我的虚拟主机的 apache 配置的一部分

<VirtualHost *:80>
ServerName sitename.com
RedirectMatch permanent ^/(.*)$ https://sitename.com/$1
</VirtualHost>

<VirtualHost *:80>
ServerName catch-all.sitename.com
ServerAlias *.sitename.com
RedirectMatch permanent ^/(.*)$ https://sitename.com/$1
</VirtualHost>

<VirtualHost *:443>
ServerName sitename.com
Header always set Strict-Transport-Security max-age=31536000
SSLProxyEngine on

答案1

在解密过程发生之前,httpd 并不知道主机头中的主机名是什么,因此如果原始请求与证书中的主机名不匹配,您将收到错误。

如果您希望两个域名都使用 https,则需要以下任一方式:

  1. 2 个 IP 地址,带有 2 个单独的证书,每个证书都附加到一个 IP 地址

  2. 适用于两个域名的通配符证书

通配符是最好的选择,但我猜你没有买其中的一个,并且你有一个特定于“sitename.com”的证书

相关内容