攻略背景
最近需要为我哥的协会申请ssl证书,因为小程序接口需要https。于是开启了这一番折腾,最后简化为一篇攻略。
第一步,申请SSL证书
这个网站最好,可以申请到1年的,其他都是三个月。1年后再申请就行了。
/
第二步,验证服务器
可以DNS验证,就是配置域名,那个太麻烦,可以选择验证服务器。只要保证
http://www.你的域名.cn/.well-known/pki-validation/fileauth.txt
可以访问并且里面是freessl给你的格式即可。
如果遇到.well-known
无法生成这个目录,可以看我的文章【SSL证书申请之如何创建/.well-known/pki-validation/目录?】
第三步,得到.pem+.key文件
验证成功后可以下载到对应的.pem+.key文件
第四部,配置nginx
把下载到的.pem
和.key
文件放入nginx/conf/cert
目录(需要新建)。
请注意再nginx.conf
配置中的路径,是指/conf
下面的路径,不是nginx
主目录下的路径
然后备份并打开nginx.conf文件,新增一下https server的配置。这里的配置是代理转发为主,如果你用nginx做前端服务器,则修改对应的配置即可。
#配置http转发到https by moshowserver {listen 80;server_name www.你的域名.;return 301 https://$server_name$request_uri;}#配置https以及证书 by moshowserver {listen 443 ssl;charset utf-8;server_name www.你的域名.;ssl_certificatecert/full_chain.pem;ssl_certificate_key cert/private.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_prefer_server_ciphers on;location / {proxy_pass http://127.0.0.1:8080;}}
第五步,重新加载配置nginx
cd /d D:\nginx-1.15.5nginx -s reload
最后,访问https
看到成功访问即可。如果有问题的话,会有提示,证书不匹配等。