每个微信小程序需要事先设置通讯域名,小程序只可以跟指定的域名进行网络通信。包括普通HTTPS请求(wx.request)、上传文件(wx.uploadFile)、下载文件(wx.downloadFile)和WebSocket通信(wx.connectSocket)。
服务器域名请在「小程序后台-开发-开发设置-服务器域名」中进行配置。
配置时需要注意:域名只支持https(wx.request、wx.uploadFile、wx.downloadFile)和wss(wx.connectSocket)协议。
域名不能使用IP地址(小程序的局域网IP除外)或localhost。
可以配置端口,如https://myserver.com:8080,但是配置后只能向https://myserver.com:8080发起请求。如果向https://myserver.com、https://myserver.com:9091等URL请求则会失败。
如果不配置端口,如https://myserver.com,那么请求的URL中也不能包含端口,甚至是默认的443端口也不可以。如果向https://myserver.com:443请求则会失败。
域名必须经过ICP备案;出于安全考虑,api.weixin.qq.com不能被配置为服务器域名,相关API也不能在小程序内调用。开发者应将AppSecret保存到后台服务器中,通过服务器使用getAccessToken接口获取access_token,并调用相关API。
对于每个接口,分别可以配置最多20个域名。
EMQ X 内置对 TLS/DTLS 的支持,包括支持单双向认证、X.509 证书等多种身份认证和 LB Proxy Protocol V1/2 等。你可以为 EMQ X 支持的所有协议启用 TLS/DTLS,也可以将 EMQ X 提供的 HTTP API 配置为使用 TLS。本文以自签证书的方式介绍如何在 EMQ X 中为 MQTT 启用 TLS。
查看证书
查看证书
创建 Root CA 自签名证书的步骤与前文一致,不再赘述。
与前文类似,只不过需要将 Root CA 的信息替换成 Second CA 的。最后我们将得到以下文件:
Note: Client 既可以使用 root-cacert.pem 与 second-cacert.pem 合并后的 cacert.pem ,也可以使用 second-cacert.pem 。
假设你已经成功安装了 EMQ X,我们将之前生成的证书一并拷贝到 emqx/etc/certs 目录下:
然后修改 emqx.conf 配置如下:
启动 EMQ X 并将日志等级改为 Debug。
使用 openssl s_client 连接 EMQ X 并发送一个 Client ID 为 "a" 的 MQTT Connect 报文。
如果你在 emqx/log/erlang.log.1 中看到以下日志,说明 SSL 认证成功。
EMQ X 继续保持运行,编译并启动 emqtt 。
连接建立成功,可以正常订阅发布,SSL 单向认证测试通过。
EMQ X 继续保持运行,启动 mqtt.fx,参照下图完成配置:
**Note: **这里只能使用 second-cacert.pem 作为 CA Certificate。
点击 Connect 按钮,连接成功,并且可以正常订阅发布,SSL 双向认证通过。
修改 emqx.conf 配置如下:
启动 EMQ X 并将日志等级改为 Debug。
使用 openssl s_client 连接 EMQ X 并发送一个 Client ID 为 "a" 的 MQTT Connect 报文。
如果你在 emqx/log/erlang.log.1 中看到以下日志,说明 SSL 双向认证成功。
EMQ X 继续保持运行,启动 emqtt 。
连接建立成功,可以正常订阅发布,SSL 双向认证测试通过。
EMQ X 继续保持运行,启动 mqtt.fx,参照下图完成配置:
Note: CA File 可以使用 root-cacert.pem 与 second-cacert.pem 合并后的 cacert.pem ,也可以使用 second-cacert.pem 。
点击 Connect 按钮,连接成功,并且可以正常订阅发布,SSL 双向认证通过。
EMQ 管理控制台 (EMQ Dashboard,以下简称 Dashboard) 是 EMQ 提供的一个后端 Web 控制台,用户可通过 Web 控制台查看服务器与集群的运行状态、统计指标,进行插件配置与停启、简单的连接测试等操作。
如果 EMQ 安装在本机,则使用浏览器打开地址 http://127.0.0.1:18083 ,输入默认用户名 admin 与默认密码 public ,登录进入 Dashboard。如果忘记了管理控制台密码,使用 管理命令 重置或新建管理账号。
Dashboard 界面与展示上提供 暗色 (默认)、 明亮 两种主题风格, 中文 、 英文 (默认)两种语言支持。用户可在 ADMIN (系统) -> Settings (设置) 中进行切换设置。
Dashboard 提供 EMQ 单机与集群的运行状态监控功能,监控指标涵盖服务器基本信息,设备连接信息,会话信息,EMQ 当前主体与订阅信息。
控制台可查看 EMQ 当前节点及服务器集群的基本信息如服务器版本、运行时间、CPU、内存、进程、运行统计等数据。
系统信息、度量指标展示的是当前节点数据,用户可以通过界面右上角下拉切换至集群内其他节点;
节点信息、运行统计展示集群内的所有节点列表的信息,标题括号内的数字即代表当前集群内节点的数量。
连接界面可查看当前客户端的连接情况,通过右上角下拉切换按钮可以切换查看某节点内、集群内的连接信息;搜索框可按照客户端 ID (clientid) 进行搜索。
会话界面可查看客户端会话信息如会话数、订阅数等,其右上角切换、搜索功能同上。
主题界面可查看集群内所有主题信息,右上角可进行主题搜索。
订阅界面可查看单节点/集群内主题订阅信息,右上角切换、搜索功能同连接与会话界面。
插件界面可查看当前节点插件运行状况,点击 启动/停止 按钮可以进行插件的停启,点击 配置 按钮可以查看并配置插件参数。 关于插件更详细的介绍请看 扩展插件 。
出于安全性考虑,通过 Dashboard 配置的插件参数不会持久化到配置文件,即每次重启 EMQ 后配置信息会丢失。用户通过界面上配置的插件参数,在确认正确可用后应当将配置写到 etc/plugins/ 目录下响应的配置文件中。
监听器界面可查看节点下网络监听状况,包含有每个服务的监听协议、地址与端口及其最大连接数与当前连接数。
该工具通过 WebSocket 与 EMQ 连接,提供客户端连接、发布/订阅、消息查看功能。WebSocket 支持非加密连接 (默认 8083 端口) 与 SSL 加密连接 (默认 8084 端口),但请注意使用加密连接时必须配置了 WebSocket 证书且主机地址填写的是与证书对应的域名。
HTTP 接口列举了 Dashboard 所有 API 接口,点击 路径 中的 URL 可以以当前登录用户调用该接口并显示数据,部分 POST/PUT/DELETE 方法接口不支持该操作。
通过应用可以创建一个 API 接口凭证,用于调用 管理监控 API 监控服务器、管理客户端、发布订阅消息等。
应用可以分配到期日期实现过期失效,如需暂时禁用应用,可以将其状态置为 拒绝访问 。
管理 Dashboard 的登录用户,支持新建、编辑、修改密码等。
使用单独的域名或将 Dashboard 绑定到现有域名的某个路径如 http://example.com/dashboard 下,参见文章: 使用 nginx 部署 EMQ Dashboard 。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)