一、证书与私钥不匹配
当出现证书与私钥不匹配时,浏览器会显示“SSL握手失败”或“安全连接失败”等警告。主要原因包括:
- CSR生成后重复生成私钥文件
- 不同服务器间误传私钥文件
解决方法步骤:
- 检查私钥文件生成时间是否晚于CSR提交时间
- 使用OpenSSL验证密钥匹配:
openssl x509 -noout -modulus -in cert.crt | openssl md5
- 重新生成CSR和私钥对
二、中间证书链缺失
阿里云免费证书需要手动补全证书链,否则会出现“证书不受信任”警告。典型表现包括:
- 移动端浏览器显示证书错误
- 部分操作系统无法验证证书
解决方案:
- 下载完整的证书链文件(包括根证书和中间证书)
- 在Nginx配置中指定证书链路径:
ssl_certificate /path/fullchain.pem;
- 使用SSL检测工具验证链完整性
三、域名不匹配警告
当部署证书后出现“域名不匹配”错误时,需排查以下情况:
现象 | 解决方案 |
---|---|
主域名与证书域名不符 | 申请多域名证书 |
子域名未包含在证书中 | 购买通配符证书 |
IP地址访问导致错误 | 禁用IP直接访问 |
建议在证书申请时准确填写所有需要加密的域名,阿里云支持单域名、多域名和通配符三种类型证书申请。
五、HTTP重定向异常
配置HTTPS强制跳转时可能遇到的典型问题:
- 重定向循环导致无法访问
- 混合内容警告(部分资源仍使用HTTP)
正确的Nginx配置示例:
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
同时需确保所有静态资源路径使用相对协议或强制HTTPS协议。
阿里云SSL证书部署需注意证书链完整性、密钥匹配性、域名准确性三个核心要素。建议部署完成后使用SSL Labs等在线检测工具进行验证,同时关注证书有效期,避免过期导致服务中断。