Apache 2.4.23 报告“服务器证书不包含 ID”,但一切正常

Apache 2.4.23 报告“服务器证书不包含 ID”,但一切正常

Apache(2.4,版本 .20 和 .23)向我的错误日志发送以下警告:

[Tue Oct 04 09:17:02.438371 2016] [ssl:warn] [pid 55157:tid 140100469708544] AH01909: <host>:<port>:0 server certificate does NOT include an ID which matches the server name

然而,当我去https://主机名:端口/... 使用 Google Chrome,我得到了绿色锁,单击它并查看服务器信息提供了有关我的服务器的所有正确信息。

这是 Apache 错误吗?是我理解错了吗?

##
## SSL Virtual Host Context
##

<VirtualHost _default_:<port>>
DocumentRoot "<the path>"
ServerName <host>:<port>

我应该更换“默认“使用我的主机名?

openssl x509 -in [证书文件] -noout -subject

-->

主题=.../OU=PlatinumSSL/CN=[主机]

因此,我在 conf 文件中正确定义了服务器名称,并且证书中正确列出了主机名。

答案1

这只是一个警告。

定义指令 ServerName 来指定您正在服务的 URL 是合乎逻辑的,当您配置证书时,httpd 会将 ServerName 中的名称与您正在使用的证书中的 CN 进行匹配。

这不会阻止 httpd 运行,因为这不是一个致命错误或其他什么,但它只是警告您,因为客户端会抱怨。

关于 VirtualHost 指令,不要在其中定义名称,名称应该在 ServerName 中定义,正如我上面提到的。

简而言之:确保证书中的 ServerName 和 CN 或 SAN 匹配。

您可以使用此命令检查证书中的 CN: openssl x509 -in /path/to/cert.crt -noout -subject

此外,如果您的证书是通配符,那么明智的做法是在您的虚拟主机中定义这些指令:

Servername example.com
ServerAlias *.example.com

相关内容