gpt4 book ai didi

apache - 为正确的 SNI 握手设置 Apache VirtualHost

转载 作者:太空宇宙 更新时间:2023-11-03 12:58:03 27 4
gpt4 key购买 nike

我的 Apache 机器出现问题,它与客户端预期的服务器名称不匹配,导致出现警告:

TLSv1.2 记录层:警报(级别:警告,描述:无法识别的名称)

我很确定这与我的 VirtualHost 配置有关。虽然我已经为所有主机设置了 ServerName 和 ServerAlias,但服务器没有发回服务器名称。

这是我的 Apache 配置:

<VirtualHost *:80>
ServerName example.io
ServerAlias example.io
Redirect permanent / https://example.io
</VirtualHost>

<VirtualHost *:80>
ServerName api.example.io
ServerAlias api.example.io
Redirect permanent / https://api.example.io
</VirtualHost>

<VirtualHost *:80>
ServerName store.example.io
ServerAlias store.example.io
Redirect permanent / https://store.example.io
</VirtualHost>

<VirtualHost *:443>
ServerName example.io
ServerAlias example.io
DocumentRoot /var/www/html

SSLEngine on
SSLCertificateFile /path/file.crt
SSLCertificateKeyFile /path/file.key
SSLCertificateChainFile /path/file.crt

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

如有任何帮助,我们将不胜感激!

最佳答案

这不是 SNI 的问题,而是缺少链证书。来自SSLLabs的报告:

Chain issues    Incomplete
...
2 Extra download RapidSSL SHA256 CA - G3
Fingerprint: 0e34141846e7423d37f20dc0ab06c9bbd843dc24

桌面浏览器有这些丢失的链证书,通常从其他站点缓存或下载它们。在这种情况下,其他应用程序或移动浏览器大多会失败。

除此之外,您还有其他设置问题,例如提供弱密码 (RC4) 和协议(protocol) (SSL3.0)。

TLSv1.2 Record Layer: Alert (Level: Warning, Description: Unrecognized Name)

这可能是因为您有一个 ServerName example.io,但客户端使用的 www.example.io 与您提供的 ServerName 不匹配。您不会在客户端收到错误,因为证书与客户端使用的名称相匹配。你可能应该使用

 ServerAlias example.com *.example.com

让这个警告消失。

关于apache - 为正确的 SNI 握手设置 Apache VirtualHost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28702359/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com