Mosquitto PHP在终端上运行,但不在浏览器错误500中运行

时间:2016-08-23 13:37:29

标签: php apache mosquitto libmosquitto

我在php中开发Mosquitto客户端时遇到问题。当我通过Terminal上的Ubuntu执行我的测试代码时,代码的效果非常好:

  

root @ ip - *********:/ var / www / html / pairing / mqtt #php pub.php Mesage   发表了干净利落的断续续续   根@ IP - ***********:/无功/网络/ 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"; }

?>

非常感谢!

1 个答案:

答案 0 :(得分:0)

我假设您正在使用Apache作为Web服务器,如果是这样,请检查mosquitto模块是否已启用使用其他正确设置启用它/etc/php5/apache2/php.ini