我试着连接MQTTS和我的HTTPS服务器,但它不工作。它在MQTTX上工作正常,但与PHP它不连接。
<?php
$server = 'myServer';
$port = '8883';
$clientId = 'testing';
$username = 'XXXX';
$password = 'XXXX';
$clean_session = false;
$connectionSettings = new ConnectionSettings();
$connectionSettings->setUsername($username)
->setPassword($password)
->setKeepAliveInterval(60)
->setLastWillTopic('mytopic')
->setLastWillMessage('client disconnect')
->setLastWillQualityOfService(1);
$mqtt = new MqttClient($server, $port, $clientId);
$mqtt->connect($connectionSettings, $clean_session);
$mqtt->subscribe('mytopic/respond', function ($topic, $message) use ($mqtt) {
echo $message;
}, 2);
$mqtt->close();
$mqtt->interrupt();
?>
如何连接MQTTS和PHP。
2条答案
按热度按时间tf7tbtn21#
查看phpMQTT库的源代码,您需要在构造函数中传递
cafile
以启用SSL/TLS连接。其中
cafile
是用于验证代理的CA证书的路径。pgx2nnw82#
好的,第一个答案是针对错误的phpMQTT库,请重试。
正确的库如下所示:https://github.com/php-mqtt/client
来自文档:
//此标志确定是否应将TLS用于连接。用于
//连接到代理必须支持TLS连接。
例如: