精华内容
下载资源
问答
  • 安装的为mosquitto-1.6.7 cd /usr/local/ # 下载源代码包 wgethttp://mosquitto.org/files/source/mosquitto-1.6.7.tar.gz # 解压 tar zxfv mosquitto-1.6.7.tar.gz mv mosquitto-1.6.7 mosquitto # 进入目录 cd ...

    安装的为mosquitto-1.6.7
    cd /usr/local/
    # 下载源代码包
    wget http://mosquitto.org/files/source/mosquitto-1.6.7.tar.gz
    # 解压
    tar zxfv mosquitto-1.6.7.tar.gz
    mv mosquitto-1.6.7 mosquitto
    # 进入目录
    cd mosquitto

     

     

    # 编译  安装
    make && make install
    可以看到最后几行,说明在/etc/下创建了配置文件和密码文件,后面可以使用,也可以就使用mosquitto/当前目录下的配置
    install -m 644 mosquitto.conf "/etc/mosquitto/mosquitto.conf.example"
    install -m 644 aclfile.example "/etc/mosquitto/aclfile.example"
    install -m 644 pwfile.example "/etc/mosquitto/pwfile.example"
    install -m 644 pskfile.example "/etc/mosquitto/pskfile.example"

     

    配置

    复制一份新的密码文件
    cp pwfile.example pwfile
    修改配置文件
    vi mosquitto.conf
    allow_anonymous false   #必须使用密码  搜索allow_anonymous  去掉前面#号
    password_file /usr/local/mosquitto/pwfile  #密码文件 搜索 password_file
    user root   # user mosquitto  权限

    port 1884   # Port to use for the default listener.  端口

    :wq

     

    生成密码
    cd src
    ./mosquitto_passwd -c /usr/local/mosquitto/pwfile user_name
    连续输入两次没密码
    可以发现之前pwfile里面有了内容

     

    启动并后台运行mosquitto
    ./mosquitto -d -c ../mosquitto.conf

    查看是否开启
    ps -aux | grep mosquitto
    whereis mosquitto_sub

    cd /usr/local/bin
    ./mosquitto_sub -h 127.0.0.1 -u root -P 12345 -p 1884 -v -t uid_login

    订阅如果遇到报错
    ./mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
    解决办法 
    ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
    更新动态链接库  ldconfig

    重新开个窗口
    ./mosquitto_pub -h 127.0.0.1 -u root -P 12345 -p 1884 -t uid_login  -m 12

    之前订阅的窗口收到信息说明成功
     
    cd /usr/local/mosquitto/src
    启动并后台运行mosquitto
    ./mosquitto -d -c ../mosquitto.conf
    查看是否开启
    ps -aux | grep mosquitto
    whereis mosquitto_sub
     
    php安装mqtt  扩展
    yum install -y php-devel
    yum install -y mosquitto-devel
    /www/server/php/56/bin/pecl install Mosquitto-alpha
     
    安装过程提示有3个函数被禁用
    popen   readlink  putenv
    安装后要恢复
     
    可能安装不成功 手动安装
    cd /tmp/pear/download    进入下载的目录
    tar zxvf Mosquitto-0.4.0.tgz    解压
    cd Mosquitto-0.4.0                  继续进入
     
    /www/server/php/56/bin/phpize
     
    ./configure --with-php-config=/www/server/php/56/bin/php-config && make && make install
     
     
     
    php.ini  添加 extension=mosquitto.so
    重启php
     
     
    mqtt.php
    <?php
        
    $client = new Mosquitto\Client();
    $client->setCredentials('root','12345');
    $client->connect("127.0.0.1", 1884, 5);
    
    for($i = 0;$i<=100;$i++) {
        $client->loop();
        $mid = $client->publish('ss', "Hello from PHP at " . date('Y-m-d H:i:s'), 1, 0);
        echo "Sent message ID: {$mid}\n";
        $client->loop();
    
        sleep(2);
    }
    sub.php
    <?php
    
    $c = new Mosquitto\Client;
    $c->setCredentials('root','12345');
    $c->connect('127.0.0.1',1884,50);
    
    $c->subscribe('ss', 1);
    
    $c->onMessage(function($m) {
        var_dump($m);
    });
    $c->loopForever();

     

     
    展开全文
  • CentOs 6.5 MQTT 安装部署

    2018-10-24 15:23:08
    CentOs 6.5 MQTT 安装部署 所需安装包: mqtt官网: http://mosquitto.org/download/ libwebsockets官网: https://libwebsockets.org/ libwebsockets-v1.6-stable.tar.gz,mosquitto-1.4.8.tar.gz 1、安装依赖 yum ...

    CentOs 6.5 MQTT 安装部署
    所需安装包:
    mqtt官网:
    http://mosquitto.org/download/
    libwebsockets官网: https://libwebsockets.org/
    libwebsockets-v1.6-stable.tar.gz,mosquitto-1.4.8.tar.gz
    1、安装依赖

    yum -y install gcc gcc-c++ openssl-devel c-ares-devel libuuid-devel wget cmake

    2、为mosquitto增加websocket支持,需要安装websocket库文件
    下载websocket,我用的是 libwebsockets-v1.6-stable.tar.gz,
    解压缩:# tar zxfv libwebsockets-v1.6-stable.tar.gz
    3、运行 websocket

    cd libwebsockets-v1.6-stable

    mkdir bulid

    cd bulid

    cmake …

    make && make install

    4、安装mosquitto
    下载mqtt,我用的是 mosquitto-1.4.8.tar.gz,
    解压缩:# tar zxfv mosquitto-1.4.8.tar.gz
    5、修改config.mk文件以使后面编译的mosquitto文件支持websocket。

    cd /mosquitto-1.4.8

    找到mosquitto-1.4.8目录下的config.mk文件,把config.mk 文件中的 WITH_WEBSOCKETS:=no 改为yes
    在这里插入图片描述
    保存后,执行

    make && make install

    ln -s /usr/local/lib/libwebsockets.so.6 /usr/lib64/libwebsockets.so.6

    groupadd mosquitto

    useradd -g mosquitto mosquitto

    注意:如果make遇到错误解决方法参考第九点
    6、创建mosquitto.conf、pwfile文件

    cd /etc/mosquitto/

    如果该目录下没有mosquitto.conf 和 pwfile
    在这里插入图片描述
    执行

    cp mosquitto.conf.example mosquitto.conf

    cp pwfile.example pwfile

    然后修改 文件mosquitto.conf ,
    在这里插入图片描述
    并在文件最后加入
    在这里插入图片描述
    7、启动 mqtt

    mosquitto -c /etc/mosquitto/mosquitto.conf

    用于测试动态显示mqtt服务的连接动态来调试mqtt服务
    8、测试
    在安装过程中,或测试过程中可能会遇到错误:
    mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
    解决方法:

    cat /etc/ld.so.conf

    echo “/usr/local/lib”>>/etc/ld.so.conf

    ldconfig

    需要打开2个窗口
    订阅:
    发送消息:
    在这里插入图片描述

    如果订阅窗口打印出hello world ,证明MQTT安装成功。
    在这里插入图片描述

    结合php测试参考(php测试mqtt文档)
    9、错误解决
    在安装过程中,或测试过程中可能会遇到错误:
    (1)mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
    解决方法:

    cat /etc/ld.so.conf

    echo “/usr/local/lib”>>/etc/ld.so.conf

    ldconfig

    (2)mosquitto_internal.h:51:20: error: ares.h: No such file or directory
    其实是因为它新加的功能的原因。打开config.mk文件。
    吧WITH_SRV:=yes 改成WITH_SRV:=no 就可以编译了
    (3)mosquitto.c:47: fatal error: libwebsockets.h: No such file or directory
    若使用websocke,则修改编译规则文件config.mk

    Build with websockets support on the broker.

    WITH_WEBSOCKETS:=yes
    (4)使用过程中找不到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.1

    (5)报错.read_handle_server.c:31:25: fatal error: uuid/uuid.h: No such file or directory
    没有安装uuid 执行上边开始的准备yum安装即可

    1540285672: New connection from 127.0.0.1 on port 1883.
    1540285672: New client connected from 127.0.0.1 as phpMQTT-publisher (c1, k10).

    New connection from 127.0.0.1 on port 1883.
    1540285730: New client connected from 127.0.0.1 as api-client_id (c1, k10).
    1540285730: Socket error on client api-client_id, disconnecting.

    Mqtt服务的卸载:whereis mosquitto
    删除已安装的mqtt文件即可,重新解压安装配置安装mqtt服务
    mqtt服务配置文件 文件夹/etc/mosquitto
    mqtt命令文件 /usr/local/sbin/mosquitto 相关mosquitto mosquitto_sub mosquitto_pub mosquitto_passwd

    展开全文
  • A simple php class to connect/publish/subscribe to an MQTT broker Documentation: Coming Soon Source: http://github.com/bluerhinos/phpMQTT To install via Composer composer require bluerhinos/...
  • phpMQTT

    2019-11-26 13:30:48
    phpMQTT参考phpMQTT客户端服务端 参考 参考网址 phpMQTT CloudMQTT 除了有php的类库,还有python,java.net等mqtt的类库。 客户端 //publish.php require("phpMQTT.php"); $host = "hostname"; //主机 $port = ...

    phpMQTT

    CloudMQTT 除了有php的类库,还有python,java.net等mqtt的类库。

    客户端

    //publish.php
     require("phpMQTT.php");
    
    $host = "hostname"; //主机
    $port = port; //端口
    $username = "username"; //如果没有则为空 
    $password = "password"; //如果没有则为空
    $message = "Hello CloudMQTT!"; //要发送的消息
    
     //phpMQTT 有四个参数:主机,端口,客户端id,证书。官网这里的案例没写证书,请参考phpMQTT类
     //没有证书的时候只能连接1883端口,不能连接8883端口。
    $mqtt = new phpMQTT($host, $port, "ClientID".rand());
     //连接
     if ($mqtt->connect(true,NULL,$username,$password)) {
    $mqtt->publish("topic",$message, 0);
    $mqtt->close(); //关闭
    }else{
     echo "Fail or time out<br />";
    }
    

    服务端

    // 注意:订阅请用窗口或者后台去运行,不要再页面运行。
     require("phpMQTT.php");
    ignore_user_abort(true); // 后台运行
    set_time_limit(0); // 取消脚本运行时间的超时上限
    date_default_timezone_set('PRC'); //设置中国时区
    
    $host = "hostname";
    $port = port;
    $username = "username";
    $password = "password";
     //同样这里少了证书参数
    $mqtt = new phpMQTT($host, $port, "ClientID".rand());
    
     if(!$mqtt->connect(true,NULL,$username,$password)){
     exit(1);
    }
    
     //currently subscribed topics
    $topics['topic'] = array("qos"=>0, "function"=>"procmsg");
    $mqtt->subscribe($topics,0);
    
     while($mqtt->proc()){ //无限去请求
    }
    
    $mqtt->close();
     function procmsg($topic,$msg){//输出消息
     echo "Msg Recieved: $msg";
    }
    
    展开全文
  • MQTTPHP服务端

    2017-05-09 10:23:40
    MQTT协议的PHP服务端demo
  • php mqtt应用

    2019-01-21 14:17:54
    php_ mqtt应用,微信支付WxpayAPI_php_付功能开发,这篇文章主要介绍了微信支付PHP SDK之微信公众号支付代码详解的相关资料
  • PHP实现 MQTT

    2018-09-10 15:50:38
    php主流推送方案分析(MQTT),实现和Android和php通过tcp进行交互
  • MacOS下php7.2安装MQTT扩展记录 # 使用pecl安装 ~ sudo pecl install Mosquitto-alpha #安装完毕 Build process completed successfully Installing '/usr/local/Cellar/...

    MacOS下php7.2安装MQTT扩展记录

    # 使用pecl安装
    ~ sudo pecl install Mosquitto-alpha
    
    #提示输入前缀的时候输入libmosquitto回车;
    
    #安装完毕
    Build process completed successfully
    Installing '/usr/local/Cellar/php@7.2/7.2.15/pecl/20170718/mosquitto.so'
    install ok: channel://pecl.php.net/Mosquitto-0.4.0
    Extension mosquitto enabled in php.ini
    
    #把编译好的so文件移动到扩展目录
    ~ cp /usr/local/Cellar/php@7.2/7.2.15/pecl/20170718/mosquitto.so /usr/local/Cellar/php@7.2/7.2.15/lib/php/20170718
    
    #配置php.ini
    ~ vi /usr/local/etc/php/7.2/php.ini
    #删除第一行 extension="mosquitto.so"
    
    #新建配置文件
    ~ vi /usr/local/etc/php/7.2/conf.d/ext-mosquitto.ini
    #文件中添加如下内容
    extension="/usr/local/Cellar/php@7.2/7.2.15/lib/php/20170718/mosquitto.so"
    
    #重新加载nginx配置
    #重启php
    
    展开全文
  • php windows环境 安装 Apache-apollo + phpMQTT 实现发送 MQTT 首先安装Apache-apollo 原文链接: http://blog.csdn.net/marrn/article/details/71141122?utm_source=itdadao&amp;utm_medium=...
  • PHP MQTT 应用实例

    2016-12-12 22:38:45
    PHP MQTT 实用demo
  • php安装mqtt扩展【Mosquitto】

    千次阅读 2019-03-14 16:44:59
    MQTT服务器搭建-mosquitto1.4.4安装指南 然后我们来安装php扩展 如果你已经使用预先建立的软件包来安装Mosquitto,你需要确保你已经安装了开发头文件。在红帽派生的系统上,这可能是叫做libmosquitto-devel,在基于 ...
  • phpMQTT.rar

    2020-07-13 15:05:42
    PHPMQTT应用实例 配置连接设置以及topic配置 实际操作展示截图 PHP命令行传参以及获取命令行传参
  • php MQTT工具类

    2020-10-30 15:42:48
    php MQTT工具类,里面附带调用例子。MQTT服务器需要自己搭建或者使用百度云,阿里云的服务都可以。
  • phpMQTT-master.zip

    2020-12-21 15:40:54
    php版本MQTT phpMQTT源码
  • mqtt 3.1 php代码,MQTT V3.1

    2021-04-09 11:34:33
    MQTT(Message Queue Telemetry Transport),遥测传输协议,提供订阅/发布模式,更为简约、轻量,易于使用,针对受限环境(带宽低、网络延迟高、网络通信不稳定),可以...
  • 其它语言的mqttclienthttps://www.eclipse.org/paho/downloads.php1.安装phpmqtt-----------------------`composer require bluerhinos/phpmqtt`2.引入并使用require("phpMQTT.php");$server ="127.0.0.1"; // ...
  • Rabbitmq是一个开源的amqp的实现,但是也支持mqtt协议,本文旨在使用docker搭建rabbitmq服务器,使用mqtt协议。搜索rabbitmq的镜像docker search rabbitmq其中第一个镜像rabbitmq是官方镜像,可以直接使用,但是这个...
  • php mqtt client

    2016-09-20 11:15:00
    <?php /* phpMQTT */ class phpMQTT { private $socket; /* holds the socket */ private $msgid = 1; /* counter for message id */ public $keepalive = 10; ...
  • MQTT学习笔记——MQTT协议体验 Mosquitto安装和使用

    万次阅读 多人点赞 2014-09-13 16:30:12
    MQTT是IBM开发的一个即时通讯协议。MQTT是面向M2M和物联网的连接协议,采用轻量级发布和订阅消息传输机制。Mosquitto是一款实现了 MQTT v3.1 协议的开源消息代理软件,提供轻量级的,支持发布/订阅的的消息推送模式...
  • php实现mqtt

    2021-02-28 10:02:47
    首先简单的介绍一下mqtt协议,MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。 MQTT协议运行在TCP/IP或其他网络协议,提供有序、无损、双向连接。其特点包括: 1.使用的发布/订阅消息模式,它提供了一对多...
  • 2.安装:composer require bluerhinos/phpmqtt=@dev 3.上代码 <?php namespace Helper; use Bluerhinos\phpMQTT; class Helper { /** * mqtt发布消息 */ public static function publish($msg) {
  • php+mqtt

    2020-11-30 11:29:07
    请问下大佬 我mqtt订阅接收时 接收的信息会很慢 基本上 1秒接收一条 这个要怎么解决 我发布的时候 一秒会发布 上百条 但是订阅接收的时候 是1秒一条的接收
  • 浅谈MQTT安装及使用

    2017-10-14 22:54:09
    浅谈MQTT安装及使用
  • 参考文档: ...github下载 :https://github.com/bluerhinos/phpMQTT CloudMQTT 概述:https://www.cloudmqtt.com/docs.html CloudMQTT 除了有php的类库,还有python,java.net等mqtt的类库。 ...
  • 非阻塞MQTT用户[PHP]

    2018-11-08 08:46:28
    require("phpMQTT.php"); $server = "xx.xx.xx.xx"; $port = 1883; $username = "username"; $password = "password"; $client_id = uniqid(); $mqtt = new phpMQTT($server, $port, $client_id); //Read ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,237
精华内容 1,294
关键字:

mqtt安装php