我正在管理一个网站,该网站使用来自知名发行人的 SSL/TLS 证书(在本例中为 GoDaddy,尽管来自其他发行人的证书也会出现同样的错误)。该网站托管在 Apache 网络服务器上。
一些网络浏览器抱怨 SSL/TLS 证书出现如下错误:
该站点的安全证书不受信任!
您试图访问 www.example.org,但服务器出示了由您的计算机操作系统不信任的实体颁发的证书。
其他网络浏览器不会抱怨。这向我表明证书本身已正确安装在网络服务器上,但网络浏览器或服务器缺少证书链的一部分。
这是另一个例子wget
:
$ wget https://www.example.org/
--2013-01-23 12:34:47-- https://www.example.org/
Resolving www.example.org (www.example.org)... 192.168.100.100, 2001:400:xxx::10
Connecting to www.example.org (www.example.org)|192.168.100.100|:443... connected.
ERROR: The certificate of ‘www.example.org’ is not trusted.
ERROR: The certificate of ‘www.example.org’ hasn't got a known issuer.
是否可以从 Web 服务器配置中更正此问题?
GoDaddy 的证书是合法的,并且安装在网络服务器上。我不想绕过这个错误(例如我不想使用wget --no-check-certificate
)。我想通过在服务器端添加正确的配置来防止这个错误。
检查您是否在服务器上安装了所有必需的中间证书。并非所有浏览器都平等对待这些错误。Firefox 的要求通常是最严格的。
如果您从其中一个受影响的浏览器查看完整的证书链,哪个证书不受信任?
如果它是不受信任的中间证书,请确保中间证书安装在 Web 服务器上。
如果是不可信的根证书,则无法从服务器端修复;客户端将需要更新他们的根证书存储。