浏览器地址栏的小锁标识,现在属于网站标配。缺少这个标识,Chrome浏览器会标记不安全,用户看到提示大概率直接关闭页面。阿里云配置SSL证书流程不算复杂,但部分环节容易出错,证书文件名、服务器配置文件路径,首次配置需要仔细核对。
操作之前确认三项前提。域名完成实名认证,解析指向服务器公网IP。服务器安全组放行443端口,这是最常见故障点。阿里云账号完成实名认证,没有实名无法申请证书。三项条件缺少任意一项,后续操作会中断。
打开阿里云控制台,顶部搜索数字证书管理服务,左侧导航证书管理,进入SSL证书管理页面。选择免费证书,打开个人测试证书也就是原免费证书页面,点击立即购买,默认20张,价格0元,勾选协议提交。免费证书有效期90天,一个自然年最多申领20张,到期不能续费,只能重新申请。不想三个月重复申请,可以选购付费正式证书,有效期一年,不用频繁更换。

购买完成证书实例状态为待申请,列表选中证书点击申请证书。填写域名,单域名证书填写example.com,默认包含www.example.com,但不包含blog.example.com这类子域名。域名验证有三种方式,自动DNS验证适合域名在阿里云解析,系统自动新增TXT记录,无需手动操作。域名托管在GoDaddy、Cloudflare这类第三方服务商,选择手动DNS验证,阿里云给出TXT记录名称和值,登录域名后台添加记录,等待几分钟到半小时解析生效,返回页面完成验证。
证书签发成功之后,列表点击下载,选择Nginx压缩包。解压得到两个文件,后缀.pem文件存放服务器证书和中级CA完整证书链,后缀.key是私钥文件。文件名一般附带域名,例如example.com.pem、example.com.key,Nginx配置填写路径需要对应。
使用scp或者宝塔文件管理器,把两个文件上传服务器。建议新建独立目录存放,例如/etc/nginx/ssl/,权限设置600,仅root可读,私钥文件禁止其他用户访问。
修改Nginx站点配置文件,配置文件一般存放在/etc/nginx/conf.d/或者/etc/nginx/sites-available/。在server块添加443端口监听配置,核心两行: