今天遇到了一个坑,搞了我一下午。之前配置过https证书。
1、去阿里云控制后台搜索栏搜索-ssl证书,点击进入,申请免费证书,在此就略过了。
2、讲重点:申请完免费证书,参考阿里云后台的nginx证书配置步骤。
新建cert文件,放置证书pem和key文件,并在域名conf文件中指向:
//xx 代表是域名地址,此处我就不全部显示了。
ssl_certificate /usr/local/nginx/cert/1787503_xx.pem;
ssl_certificate_key /usr/local/nginx/cert/1787503_xx.key;
完整的域名conf配置参考阿里云的帮助文档:
https://help.aliyun.com/knowledge_detail/95491.html?spm=5176.2020520154.cas.29.549c56a7ayzM1I
3、关键点:我tcping +ip +443端口为什么是closed的,明明已经开启了。
后来问了客服,回复让我先检查centos内的443端口是否监听,结果没有。
阿里客服还给了添加443监听的方法,可以先运行一下:
netstat -ano | grep :443
操作相关命令:
netstat -anp |grep 443
// 一开始是空,没有任何返回结果,重启了nginx就好了。此处是最大的坑,配置好了conf,一定要重启nginx服务,让它监听443端口(提前你也要在阿里云-ecs-安全组上添加443端口访问)
//输出结果
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 4426/nginx: master
看到listen代表OK了
4、我用的是mac,再次使用tcping +ip +443(windows使用telnet命令),就看到open了
port 443 open.
备注:mac安装tcping很简单,直接brew install tcping即可
5、最后访问一下自己的https地址域名,看是否可以正常访问,到此https证书配置完成。
网友评论