Я столкнулся с проблемой разработки Mosquitto
клиент в php. Когда я выполняю свой тестовый код через Terminal
на Ubuntu
код работает очень хорошо, как это:
root @ ip — *********: / var / www / html / pairing / mqtt # php pub.php Mesage
опубликовано Отключено чисто
корень @ ф — ***********: / вар / WWW / HTML / спаривание / MQTT #
Но когда я запускаю этот код в браузере каждый раз, когда я получаю HTTP ERROR 500
,
Кто-нибудь знает в чем может быть эта проблема? Я просто настраиваю разрешения через chmod
но это еще не работает.
Вот код:
<?php
$client = new Mosquitto\Client(); $client->onConnect('connect'); $client->onDisconnect('disconnect'); $client->onPublish('publish'); $client->connect("test.mosquitto.org", 1883, 5);
while (true) {
try{
$client->loop();
$mid = $client->publish('/mqtt', "Hello from PHP");
$client->loop();
}catch(Mosquitto\Exception $e){
return;
}
sleep(2); }
$client->disconnect(); unset($client);
function connect($r) {
echo "I got code {$r}\n"; }
function publish() {
global $client;
echo "Mesage published\n";
$client->disconnect(); }
function disconnect() {
echo "Disconnected cleanly\n"; }
?>
Большое спасибо!
Я предполагаю, что вы используете Apache в качестве веб-сервера, если это так, проверьте, включен ли модуль mosquitto, с помощью правильно настроенного параметра enable в /etc/php5/apache2/php.ini.
Других решений пока нет …