Comment appeler ejabberdctl de PHP (Apache)
Question
Je suis en train d'appeler ejabberdctl de PHP, mais je continue à obtenir un code d'erreur de 3 (Echec de la connexion RPC au nœud ejabberd @ localhost: nodedown).
Mon script PHP contient le code suivant pour ajouter des amis:
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);
J'ai également ajouté à ejabberdctl / etc / sudoers comme ceci:
# Custom entry for ejabberdctl, so it can be used via PHP
www-data ALL= NOPASSWD: /opt/ejabberd-2.1.2/bin/ejabberdctl
J'ai également ajouté le répertoire bin ejabberd / etc / environnement, comme ceci:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/ejabberd-2.1.2/bin"
source /etc/environment
Chaque fois que je lance le script PHP RETCODE de $ (le code exec de retour) retourne 3, mais si je lance le même fichier php à partir de la ligne de commande il fonctionne.
Aide
La solution
Il se trouve que c'était un problème de cookie (biscuit Erlang). Pour la réponse, voir ejabberdctl ne fonctionne pas de PHP
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow