由于项目有一个通讯功能,使用到了mqtt。接入小程序的过程中,因小程序本身的限制,线上环境只能是https和wss的接入方式。遇到了一些问题,处理后记录下,也当做是一次分享,希望可以帮到其他的后来的人。
环境:
1、mosquitto(mqtt服务器)
2、Nginx
3、Jetty(Java应用服务器)
4、haproxy
主要是利用了Nginx反向代理功能,配置如下:
server {
listen 443 ssl;
server_name ma.minapps.com; #域名
ssl_certificate /usr/local/nginx/cert/server.pem; #(证书公钥)
ssl_certificate_key /usr/local/nginx/cert/server.key; #(证书私钥)
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
charset utf-8;
access_log logs/ma/access.log;
error_log logs/ma/error.log;
location /{
proxy_pass http://jetty.minapps.com; #代理到原有的http的地址去,格式为(http://ip:prot或http://域名)
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-F