EMQX MQTT 微信小程序接入搭建

1、通过域名去申请CA 颁发的证书:xxx.com_cert_chain.pem && xxx.com_key.key

2、域名需要在小程序管理后台(开发 -> 开发设置 -> 服务器域名 -> socket 合法域名)添加

3、证书申请绑定时,必须与所使用的服务器域名一致,建议使用 Nginx 来做反向代理并终结证书,相关配置如下:

 server {
        listen  443 ssl;        
        server_name xxx.lz-qs.com; // 签名证书域名
        ssl_certificate   /usr/local/nginx/cert/ssl/xxx_cert_chain.pem;
        ssl_certificate_key  /usr/local/nginx/cert/ssl/xxx_key.key;
        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 /mqtt {
          proxy_pass http://192.168.10.xx:8084/mqtt;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          # client_max_body_size 35m;
          proxy_http_version 1.1;
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection "upgrade";    
        }

    }

4、安装EMQX可以参考这个链接:EQMX+Nginx集群搭建_emqx nginx_刺-客的博客-CSDN博客

5、 EMQX 配置,打开 etc/emqx.conf 配置文件,修改以下配置:

## Path to the file containing the user's private PEM-encoded key.
##
## See: listener.ssl.$name.keyfile
##
## Value: File --CA证书路径
listener.wss.external.keyfile = /usr/local/nginx/cert/ssl/xxx_key.key

## Path to a file containing the user certificate.
##
## See: listener.ssl.$name.certfile
##
## Value: File--CA证书路径
listener.wss.external.certfile = /usr/local/nginx/cert/ssl/xxx_cert_chain.pem

## Path to the file containing PEM-encoded CA certificates.
##
## See: listener.ssl.$name.cacert
##
## Value: File--CA证书路径
listener.wss.external.cacertfile = /usr/local/nginx/cert/ssl/xxx_cert_chain.pem

 6、用客户端连接测试一下:

  

 至此已完成!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刺-客

如果对您有点帮助,请给点支持~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值