很多站长第一次给网站开启HTTPS,都会卡在阿里云证书安装这一步。证书下载下来是一堆文件,不清楚该放哪、怎么配,改完也不知道哪里出了问题。证书装在哪一层,决定了后面要改哪些地方,这篇先从这个判断讲起,再说说用负载均衡时容易漏掉的几处配置。

先确认证书装在哪一层
阿里云证书安装的位置取决于你的服务架构,大致分三种:
- 自建服务跑在ECS上,比如Nginx或Tomcat,证书要放到服务器本地的配置文件里。
- 前面挂了负载均衡SLB,HTTPS在SLB上完成解析,证书上传到负载均衡即可,后端服务可以走HTTP。
- 网站接入了CDN,证书在CDN控制台上传,源站只需保证回源通畅。
三种方式的配置位置完全不同。如果证书传到了错误的地方,后面每一步都会对不上,所以先把这一步看清楚。
申请与域名验证
在阿里云SSL证书控制台申请时,选对域名和证书类型。免费DV证书签发前要完成域名验证,常见的有DNS验证和文件验证两种。DNS验证适合域名解析放在阿里云云解析的情况,按提示添加一条TXT记录,一般很快就能通过。文件验证要把指定文件放到网站根目录,并确保能通过HTTP访问。如果目录没配对,或者被跳转规则拦住,验证就会失败。
签发后状态变为已签发,就可以下载了。下载时选Nginx类型,别选成其他服务器的格式,否则文件结构和你的配置对不上。
Nginx方式:一个在线课程团队的做法
某个做在线课程的小团队,网站部署在一台ECS上,用Nginx反向代理后端服务。下载证书后,他们拿到证书文件和私钥文件两个核心文件,按下面的顺序处理:
- 把两个文件上传到服务器,例如 /etc/nginx/ssl/,并把私钥的权限收紧,只允许root读取。
- 编辑站点配置,增加443端口监听,指定证书和私钥的路径。
- 执行 nginx -t 做语法检查,通过后再重载,不要直接reload。
- 用浏览器和在线检测工具访问,确认证书链完整、有效期正确。
配置里的关键指令是 listen 443 ssl,ssl_certificate 指向证书,ssl_certificate_key 指向私钥。协议建议只保留TLSv1.2和TLSv1.3,既能保证兼容性,也避开了老旧协议的已知风险。
负载均衡方式:要改哪几处
用SLB时,证书通常挂在负载均衡上,Nginx不必再直接处理证书。在负载均衡控制台新增HTTPS监听,端口选443,证书选已上传的,或者直接上传证书文件和私钥。监听建好后,有几处要逐一核对:
- 监听协议和端口:确认是HTTPS监听、端口是443。别删掉了原来的HTTP监听,却忘了添加新的。
- 后端服务的端口和协议:如果后端Nginx仍在80端口提供服务,转发规则里要对应填写,否则请求转发不过去。
- 安全组:后端ECS的安全组要放行SLB转发过来的端口。没放行时访问会超时,很容易误以为是证书的问题。
- HTTP跳转:老用户还会输入http://访问,需要在负载均衡或Nginx里设置跳转到https,否则两种地址会同时可访问。
改完之后,先用curl或浏览器访问一次,看返回的是不是新证书,再看跳转和页面是否正常。证书内容没问题,不代表访问链路就通了。
常见坑和排查
- 证书链不完整:部分浏览器会提示证书不受信任。把服务器证书和中间证书合并成一个文件再配置,顺序是服务器证书在前,中间证书在后。
- 私钥不匹配:Nginx重载报错,多半是证书和私钥不是同一次生成的。重新核对文件,别只看文件名。
- 443端口没开放:页面打不开时,先查端口和安全组,再去怀疑证书。
- 证书到期:免费证书有效期较短,建议设好到期提醒,或者配置自动续期,省得到期后浏览器突然报错。
收尾
阿里云证书安装本身不难,麻烦的是先确认部署位置,再按顺序核对。ECS上用Nginx手动配置,走SLB则在负载均衡里挂证书,同时检查后端端口、安全组和跳转规则。每次改完都做一次语法检查和真实访问,能省下不少排查时间。