Wie Aufruf ejabberdctl von PHP (Apache)
Frage
Ich versuche ejabberdctl von PHP zu nennen, aber ich erhalte einen Fehlercode von 3 (Fehlgeschlagen RPC-Verbindung zu dem Knoten ejabberd @ localhost: nodedown).
Mein PHP-Skript enthält den folgenden Code Freunde hinzuzufügen:
exec('sudo /opt/ejabberd-2.1.2/bin/ejabberdctl add_rosteritem adil.baig40122310029739 godudu.com chburaska0822431111022397 godudu.com chburaska0822431111022397 Friends both', $output, $retCode);
exec('sudo /opt/ejabberd-2.1.2/bin/ejabberdctl add_rosteritem chburaska0822431111022397 godudu.com adil.baig40122310029739 godudu.com adil.baig40122310029739 Friends both', $output, $retCode);
Ich habe auch hinzugefügt ejabberdctl in / etc / sudoers gerne so:
# Custom entry for ejabberdctl, so it can be used via PHP
www-data ALL= NOPASSWD: /opt/ejabberd-2.1.2/bin/ejabberdctl
Ich habe auch die ejabberd ist Verzeichnis / etc / environment, wie so hinzugefügt:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/ejabberd-2.1.2/bin"
source /etc/environment
Jedesmal, wenn ich starten Sie den PHP-Skript $ retCode (der exec Return-Code) gibt 3 zurück, aber wenn ich die gleiche PHP-Datei von der Befehlszeile ausführen funktioniert es.
Hilfe
Lösung
Es stellt sich heraus, dass dies ein Cookie (Erlang Cookie) Problem war. siehe die Antwort ejabberdctl funktioniert nicht von PHP
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow