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

Langage PHP Discussion :

Appel script shell par page PHP


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 32
    Points : 24
    Points
    24
    Par défaut Appel script shell par page PHP
    Bonjour à tous.

    Ma configuration :

    Serveur Cherokee 1.0.8
    Debian 6 64bits
    PHP 5.3.3 (safe_mode off)

    Mon problème

    J'ai créé un petit script shell qui prend un screenshot d'une page web :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    opera -fullscreen -display :10.0 -nosession $1&
    sleep 5
    import -display :10.0 -window root $2
    $1 est l'adresse du site à capturer, $2 le fichier dans lequel la capture sera enregistrée.

    Déroulement

    Quand j'appelle le script depuis une page web, en faisant par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec("mon_script http://www.google.fr test.png")
    , il ne se passe rien, ou plus exactement, dans les logs de cherokee, j'obtiens ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    GtkToolkit: error: gtk_init_check failed!
    Could not initialize Opera.
    Par contre, dans un shell, quand je me mets en www-data (su www-data) et que je lance le script, tout se déroule bien.

    Les droits sur le script et le répertoire de destination des captures sont donc bons, et je vois bien la fenêtre d'Opera s'ouvrir dans mon environnement de bureau.

    J'ignore si le problème vient de cherokee, de PHP ou d'autre chose, et je ne comprends pas pourquoi j'ai ce message d'erreur de cherokee.

    Je poste dans la section PHP parce qu'il se peut qu'une directive de configuration particulière m'ait échappé, et parce que pour moi, ce n'est pas évident que cherokee soit en cause (je me trompe peut-être ceci dit).

    Merci pour vos lumières...

  2. #2
    Membre régulier
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Points : 77
    Points
    77
    Par défaut
    c'est pas lié au faite d'appelé le script depuis l’extérieur? l'utilisation d'exec peut en être limité du coup en droit, gtk indique une erreur probablement lié au X-server?

Discussions similaires

  1. [PHP 5.4] executer script shell depuis page php
    Par tintin3158 dans le forum Langage
    Réponses: 0
    Dernier message: 18/07/2013, 12h29
  2. Réponses: 2
    Dernier message: 31/01/2013, 21h38
  3. [MySQL] Affichage page par page PHP MySQL
    Par Hamnatouch dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/05/2011, 12h35
  4. Script shell lancant un php en tache de fond
    Par simplet57 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 03/11/2010, 15h27
  5. Script dans une page à part et l'appeler par un lien
    Par kent151 dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 22/04/2006, 19h59

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