环境:
nginx-1.17.7 、apache-tomcat-7.0.73
配置过程:配置前强调ngnix配置SSL后,tomcat不需要在配置SSL文件了。
第一步,从阿里云或者腾讯云下载SSL证书文件放到ngnix下的conf下建个文件夹cert,里面放.key和.perm文件
第二步:修改nginx.conf文件
具体配置如下
# HTTPS server
#
server {
listen 9443 ssl;//这个是通过https请求的端口号,默认是443我改成9443了
server_name www.XXXX.com;#这个是你的域名就是申请SSL证书的那个域名
#ssl on;这个地方不需要,看着百度上别的人需要,但是我者不需要,加上就报错
ssl_certificate cert/www.XXXX.com.pem;#这个是你申请的SSL的文件名(在cert文件夹下的那个文件)
ssl_certificate_key cert/www.XXXX.com.key;#这个是你申请的SSL的文件名(在cert文件夹下的那个文件)
ssl_session_cache shared:SSL:1m;#这个都可以根据实际修改
ssl_session_timeout 5m;#根据具体情况修改不改也可以
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#使用此加密套件。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8888; #注意这个地方要这样写,这个地方要用你tomcat中server.xml中配置的端口,我用http://upstream就报错
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
tomcat的server端口配置(端口8888跟ngnix的proxy_pass http://127.0.0.1:8888;对应的),项目放在root目录下即通过http://127.0.0.1:8888能访问到你的项目:
上面的配置完成后SSL的配置就算完成了。然后你启动ngnix.exe,然后启动tomcat。都启动后,在浏览器里输入https://www.XXXX.com:9443访问下是不是能访问到你的项目,如果提示证书不安全,说明你SSL有地方没配置好。如果能正常访问了继续进行下一步。
第三步:微信小程序配置:
进入微信小程序公众平台,设置服务器域名。
配置后在微信开发者工具中能看到如下信息
第四步开发中代码设置:
①如果是socket请求要用wss,小程序跟web端都要用wss开头
web端代码
②如果是https,要把http改为https