IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

executer un service via php


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut executer un service via php
    Salut,

    J'ai créé un service de démarrage, stoppage et de redémarrage de solr que j'ai mis dans le /etc/init.d/ .

    Mais quand j'essaye d'appeler ce service dans une page web afin de faire des actions dessus, il ne se passe rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec("/etc/init.d/solr start", $output_var);
    J'ai essayé avec et sans sudo. Je ne comprend pas pourquoi le service ne se lance pas.

  2. #2
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 385
    Points : 3 527
    Points
    3 527
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Il faut aussi que l'utilisateur d'apache ai le droit de l’exécuter il me semble.

    (www-data)
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  3. #3
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    et que l'utilisateur www-data ait le droit de traverser jusqu'a /etc/init.d (option x sur les répertoires)

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Merci pour vos réponses.

    Bon j'ai réussi mais il y a un truc que je ne comprend pas.

    Quand je le lance via ssh la tache se lance et j'ai a nouveau le prompt. Mais quand je le lance via mon navigateur j'ai mon site que tombe car il tourne en boucle. Comme s'il gardé en mémoire la réponse du script.

  5. #5
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    J'ai déjà eu ça, je crois que c'est parce que exec n'est pas vraiment un shell donc peut être que la main n'est pas rendue par les moyens conventionnels.

    Je n'ai pas testé mais ça pourrait fonctionner si on redirige les flux de sortie de cette façon:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec("sudo /etc/init.d/daemonToStart > /dev/null 2>&1 &");

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Merci c'est exactement ça qu'il me manquer dans mon exec.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Executer fonction Flex via PHP
    Par cocacola0589 dans le forum Flex
    Réponses: 2
    Dernier message: 22/05/2009, 15h23
  2. executer programme externe via php
    Par said57 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/05/2009, 16h12
  3. [Système] executer un programme via un script php
    Par jeanfrancois dans le forum Langage
    Réponses: 9
    Dernier message: 08/02/2006, 15h51
  4. [Configuration] Lancer Arreter un service via php
    Par sebeni dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 14
    Dernier message: 24/01/2006, 14h43
  5. [Librairies] Exécution d'un .JAR sur un serveur distant via PHP
    Par kaboume dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 09/10/2005, 14h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo