1. 在godaddy购买了UCC SSL(最多5个域名)的SSL证书
2. 设置证书 -- 管理 --
3. 需要制作证书申请CSR文件(在线工具制作或者openssl命令制作),保存CSR和key文件。
4. 制作的时候,我这里虽然是多域名证书(一个证书绑定多个域名),但是制作CSR只制作主域名的CSR,其它域名通过SAN添加即可,复制CSR的内容到下面图片框:
点击 申请证书..
会需要验证你对域名的完全控制权,会发邮件到我们申请ssl的邮箱,里面有一串字符串,我在域名里添加一个txt记录,记录值为那串字符串即可,然后验证通过,证书就下发了。
5. 证书下发后,根据web服务器的类型,下载相应的证书,解压后,有两个证书:
我们需要通过命令:cat 89609f6da0d1a82d.crt gd_bundle-g2-g1.crt >app.crt 把两个证书合并。
6. Nginx上的SSL配置
server {
listen 443 ssl;
server_name app.aaaa.com app.bbbb.com app.cccc.com;
ssl_certificate app.crt;
ssl_certificate_key app.key;
access_log /data/logs/nginx/access/app.access.log main;
error_log /data/logs/nginx/error/app.error.log;
location /
{
root /usr/local/gacp/nginx/html/;
include flb_params;
}
}
server {
listen 80;
server_name app.aaaa.com app.bbbb.com app.cccc.com;
rewrite ^(.*) https://$host$1 permanent;
}
需要注意的是,这里rewrite的时候,使用的是遍历$host而不是$server_name是因为多个域名,$server_name是匹配的当前虚拟主机配置的第一个域名,$host才能真正保证是访问的域名。