[MQTT]部署mosquitto服务
来源:互联网 发布:mac怎么换桌面 编辑:程序博客网 时间:2024/06/05 13:35
一,部署mosquitto服务
安装工具
sudo apt-get install libssl-dev libc-ares-dev uuid-dev
下载 Mosquitto
wget http://mosquitto.org/files/source/mosquitto-1.4.13.tar.gz
解压
tar xzvf mosquitto-1.4.13.tar.gz
安装
cd mosquitto-1.4.13/make -jusudo make install
使用过程中找不到libmosquitto.so.1
error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
【解决方法】——修改libmosquitto.so位置
创建链接并更新动态链接库
sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1sudo ldconfig
启动服务
mosquitto -c /etc/mosquitto/mosquitto.conf.example
调试命令示例
订阅
mosquitto_sub -h localhost -t TAG
发布
mosquitto_pub -h localhost -t TAG -m test
二,安装php的mqtt扩展
安装php工具
sudo apt install php-pear php7.0-dev
安装扩展
sudo pecl install Mosquitto-alpha
配置扩展,打开下面两个文件
sudo vim /etc/php/7.0/apache2/php.inisudo vim /etc/php/7.0/cli/php.ini
文件末尾添加
extension=mosquitto.so
重启服务
sudo service apache2 restart
发布消息示例代码
<?php$client = new Mosquitto\Client();$client->connect("localhost", 1883, 5);$client->loop();$mid = $client->publish('/hello', "Hello from PHP at " . date('Y-m-d H:i:s'), 1, 0);$client->loop();$client->disconnect();
接收消息示例代码
<?php$client = new Mosquitto\Client();$client->onMessage('message');$client->connect("localhost", 1883, 5);$client->subscribe('#', 1);$client->loopForever();function message($message) { printf("Got a message on topic %s with payload:\n%s\n", $message->topic, $message->payload);}
SSL配置如下(/etc/mosquitto/):
#cafile /etc/ssl/whiteskycn/server_chain.crtcapath /etc/ssl/whiteskycn/# Path to the PEM encoded server certificate.certfile /etc/ssl/whiteskycn/server.crt# Path to the PEM encoded keyfile.keyfile /etc/ssl/whiteskycn/server.key
可以用wget https://github.com/owntracks/tools/raw/master/TLS/generate-CA.sh 生成server和client端的key。
示例代码及相关文档:
https://github.com/mgdm/Mosquitto-PHP
http://mosquitto-php.readthedocs.io/en/latest/
https://github.com/mqtt/mqtt.github.io/wiki/libraries
http://blog.csdn.net/peakguy/article/details/71634842
阅读全文
0 0
- [MQTT]部署mosquitto服务
- mosquitto(mqtt)服务部署+redis 认证模块
- (转)android消息推送mqtt代理服务mosquitto详解
- Mosquitto搭建Android推送服务(一)MQTT简介
- MQTT的学习研究(十六) MQTT的Mosquitto的window安装部署
- 开源mqtt代理:mosquitto
- android 推送 mosquitto MQTT
- 开源mqtt代理:mosquitto
- 开源mqtt代理:mosquitto
- MQTT服务器搭建--Mosquitto
- MQTT,mosquitto,Eclipse Paho
- mosquitto mqtt tls 认证
- MQTT--mosquitto使用详解
- 物联网MQTT协议分析和开源Mosquitto部署验证
- 物联网MQTT协议分析和开源Mosquitto部署验证
- CentOS下安装mosquitto(MQTT)
- MQTT学习之mosquitto安装
- MQTT mosquitto的初步学习
- CentOS6.7安装MySQL5.7详细教程
- BF算法(作业五)
- js排序算法
- Android之路 3.活动的生命周期
- scikit-learn 逻辑回归类库使用小结
- [MQTT]部署mosquitto服务
- 【.Net码农】【淘宝API】淘宝API开发系列--商家的绑定
- js时分秒倒计时
- shell语言,判断一个数字与10的大小
- 题目1 : 漏写的数字
- LeetCode Find K-th Smallest Pair Distance
- Linux服务器编程——Linux基础命令
- Node js 写 hello word
- vtk视图设置