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

Linux Discussion :

Lancer un fichier bash par une page web ?


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut Lancer un fichier bash par une page web ?
    Bonjour

    Je souhaiterais lancer un script .sh à distance sur une page html de mon serveur.

    Je cherche depuis un bout de temps des explication la dessus mais je trouve des choses qui me sont pas trop claires....

    Comment réaliser cela ?

    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 720
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 720
    Points : 31 043
    Points
    31 043
    Billets dans le blog
    1
    Par défaut
    1) tu renommes ta page "page.html" en page "page.php" et tu mets à jour les liens qui mènent vers cette page
    2) A l'endroit de ta page où tu veux lancer ton script shell, tu insères les lignes suivantes
    <script language="php">
    system("chemin vers le script shell/script shell.sh");
    </script>
    Et voilà.

  3. #3
    Membre éclairé Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Points : 790
    Points
    790
    Par défaut
    Tu as aussi la solution script cgi.

    Un lien au hasard : http://www.yolinux.com/TUTORIALS/Lin...ellScript.html

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut Oups
    en fait historiquement ma page est en html. Elle tournait très bien sous windows. ca tournait de la manière suivante :
    Au bas de la page j'ai un bouton qui execute un script php qui lui lance une script .bat.


    Maintenant sous Lilnux.
    Au bas de la page j'ai un bouton qui execute un script php qui lui lance une script .sh.

    Ce script php d'origine est tout simple :
    <?php
    exec("./script_CSS_MATCH stop);
    ?>

    je l'ai remplacé par :
    <?php
    system ("./script_CSS_MATCH stop");
    ?>

    ca ne change pas grand chose.


    N'y aurait t-il pas également une histoire de droit ?
    Car l'utilisateur qui lance ce script n'est pas le même que celui qui avait fait :
    ./script_CSS_MATCH start sous putty ?

    Je suis un peu perdu la.....
    Je suis un gros débutant donc soyez compréhensif....

  5. #5
    Membre éclairé Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Points : 790
    Points
    790
    Par défaut
    Met un chemin absolu pour invoquer ton script plutôt que "./". Si cela ne marche toujours pas.

    Effectivement, il peut ensuite y avoir des problèmes de droits. Le script sera certainement utilisé par l'utilisateur du serveur (apache ?). Tu peux vérifier les droits de ton script avec la commande "ls -l" par exemple. Si tu utilises apache, les droits avec les quels il est lancé sont spécifiés dans le fichier de conf (de mémoire).

  6. #6
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 720
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 720
    Points : 31 043
    Points
    31 043
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    en fait historiquement ma page est en html. Elle tournait très bien sous windows. ca tournait de la manière suivante :
    Au bas de la page j'ai un bouton qui execute un script php qui lui lance une script .bat.


    Maintenant sous Lilnux.
    Au bas de la page j'ai un bouton qui execute un script php qui lui lance une script .sh.

    Ce script php d'origine est tout simple :
    <?php
    exec("./script_CSS_MATCH stop);
    ?>

    je l'ai remplacé par :
    <?php
    system ("./script_CSS_MATCH stop");
    ?>

    ca ne change pas grand chose.


    N'y aurait t-il pas également une histoire de droit ?
    Car l'utilisateur qui lance ce script n'est pas le même que celui qui avait fait :
    ./script_CSS_MATCH start sous putty ?

    Je suis un peu perdu la.....
    Je suis un gros débutant donc soyez compréhensif....
    La réponse de valefor est un début de piste. Tu peux aussi aller voir les logs Apache car dès qu'il y a une erreur, cela est indiqué. Je te conseille de commencer par vider tout le fichier de logs, puis faire ton test puis aller voir le contenu du fichier.
    Concernant ton problème de droits, il faudrait que tu te mettes au courant de la façon dont Unix les gère, cela te rendra beaucoup de services. Mais si tu mets ton script au même propriétaire et groupe que les autres fichiers environnants, tu devrais avoir moins de problème. Et n'oublie pas non plus de lui mettre le droit "x" => chmod a+x nom_du_script

    Et ne prend pas Apache de Windows comme référence. Apache est un produit avant tout fait pour Linux puis ensuite porté sous Windows. Ca veut dire que si ça marche sous Linux, ce que tu fais marchera sous Windows alors que l'inverse n'est pas forcément vrai (certains mécanismes Apache Linux disparaissent sous Windows alors que si tu ramènes un outil depuis Windows où le mécanisme n'a pas été implémenté, il manquera à Linux qui ne saura pas quoi faire donc qui ne fera rien).

  7. #7
    Membre confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    509
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Août 2007
    Messages : 509
    Points : 622
    Points
    622
    Par défaut
    Normalement dans ta config d'Apache, t'as un dossier cgi-bin qui permet de lancer des scripts cgi, par exemple des scripts .sh. Donc, il suffit que tu crées un dossier cgi-bin et mettre tes scritpts sh dedans. Tout ce qui est droit est géré par Apache.

Discussions similaires

  1. [Python 2.X] Fichier config par une page web
    Par BerSerK dans le forum Général Python
    Réponses: 1
    Dernier message: 07/03/2015, 20h38
  2. [VB.Net] afficher un fichier pdf dans une page WEB
    Par kasaw dans le forum ASP.NET
    Réponses: 3
    Dernier message: 25/08/2008, 16h02
  3. Lancer un telnet à partir d'une page Web
    Par nizarsm dans le forum ASP
    Réponses: 2
    Dernier message: 22/02/2007, 14h01
  4. afficher un fichier ppt dans une page web
    Par aymenroma dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 31/07/2006, 19h29
  5. [Système] Lancer un programme externe depuis une page web
    Par needles94000 dans le forum Langage
    Réponses: 2
    Dernier message: 08/02/2006, 21h34

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