1.从阿里云申请证书
2.将证书下载到本地然后修改文件名称
3.将证书上传到服务
这里遇到一个坑,之前将证书上传到项目目录,nginx配置的时候写的是绝对路径但是后面无法启动nginx,后面排查原因是因为
我用docker部署的环境,项目目录是跟容器做的目录共享,导致nginx启动的时候无法报无法打开文件,这里有俩种方案
- 第一种:删除容器重新部署,将容器内的nginx目录跟宿主机进行共享然后将证书放到共享目录
- 第二种:将证书复制到容器内
#容器nginx下创建cert目录 复制宿主机文件到容器
docker cp ssl.key 容器ID:/usr/local/nginx/cert/
docker cp ssl.pem 容器ID:/usr/local/nginx/cert/
4.变更nginx配置文件
将http的请求重定向到https
5.配置https配置文件
6.重新启动nginx
nginx -t
nginx -s reload
7.访问原来的站点
发现已经没有感叹号了