Lancer un script sur le serveur depuis une page web

Lancer un script sur le serveur depuis une page web - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 16-03-2005 à 14:22:16    

Hello, je suis perdu, je n'ai trouvé pas l'info qui m'aurait fait tilt  :??:  
 
1 serveur debian.
1 script sur ce même serveur.
1 site web tournant ailleur que sur ce serveur debian (php)
 
J'aurais besoin (de la solution si vous avez) d'un début, ou de la marche à suivre, des composants essentiels, etc, pour faire:
 
que depuis le site web, en cliquant sur une option lancer script, cette action fasse lancer le script sur le serveur debian.
 
et si vous pensez peut-être quoi faire, dites-le aussi, cela pourras toujours m'aiguiller sur la bonne voie  ;)
 
et est-ce au moins possible? Ou faut-il que tout soit sur le serveur debian (site web compris) ?
 
merci

Reply

Marsh Posté le 16-03-2005 à 14:22:16   

Reply

Marsh Posté le 16-03-2005 à 15:02:16    

il te faut ssh sur le serveur debian et php sur le site_web alors c'est possible :
 
http://de3.php.net/manual/fr/function.ssh2-exec.php
 
dans ton php, tu te fais un bouton qui appelle la meme page qui intercepte la valeur du bouton s'il est cliqué et lance ton script.


Message édité par rengzehn le 16-03-2005 à 15:05:04
Reply

Marsh Posté le 16-03-2005 à 16:50:25    

euh question bete, comment je fais pour installer cette librairir sur apache ?
je capte pas comment ?

Reply

Marsh Posté le 17-03-2005 à 11:40:05    

Bon tu mets ça dans un fichier test.php sur ton site web (qui doit avoir le support php) :  

Code :
  1. <?
  2. function executescript() {
  3. $connection = ssh2_connect('ip_de_ta_machine', 22);
  4. ssh2_auth_password($connection, 'username', 'password');
  5. $stream = ssh2_exec($connection, 'chemin_vers_ton_script');
  6. }
  7. echo '<form action="test.php" method="post">';
  8. echo '<input type="submit" name="scriptage" value="lancer le script">';
  9. echo '</form>';
  10. if (isset($_POST['scriptage'])) executescript();
  11. ?>


 
Et je sais pas à qui je parle, deux nicknames pour une personne ? c'est quoi ce bazarre ? Et il faut poster les les questions de prog dans la section prog hein.


Message édité par rengzehn le 17-03-2005 à 11:40:24
Reply

Marsh Posté le 17-03-2005 à 15:24:28    

Merci rengzehn, je cherchais veraiment pas dans cette voie :)
 
Concernant croli, je t'assure que ce n'est pas moi.
A+

Reply

Marsh Posté le 17-03-2005 à 15:45:28    

ok c'est plus clair. Attention quand même au niveau 0 de sécurité de ce truc, qqun qui envoie la bonne requete au site web fait exécuter le script sur le serveur. Pour ça il est facile de rajouter deux chapms <input> au formulaire avec le login et le passwd à envoyer au serveur, ce serait mieux.

Reply

Marsh Posté le 21-03-2005 à 08:31:51    

tu peux utiliser un truc du genre

Code :
  1. <?php
  2. system("bash /home/bla/script.sh" );
  3. ?>


après avoir donné à apache les droits de lecture.

Reply

Marsh Posté le 21-03-2005 à 08:47:14    

Ca c'est bon quand tout est sur le même serveur ...
 
Pour ssh il va lui falloir generer des paires de clés pour ne pas avoir à donner de mot de passe etc...

Reply

Marsh Posté le 24-03-2005 à 14:14:30    

__JaKaL__ a écrit :

Merci rengzehn, je cherchais veraiment pas dans cette voie :)
 
Concernant croli, je t'assure que ce n'est pas moi.
A+


 
euh rien car j'ai le meme soucis, donc la question m'interesse  aussi loool c'est pas 2 nickname !!
mdr
 :lol:

Reply

Marsh Posté le 24-03-2005 à 15:00:42    

rengzehn a écrit :

Bon tu mets ça dans un fichier test.php sur ton site web (qui doit avoir le support php) :  

Code :
  1. <?
  2. function executescript() {
  3. $connection = ssh2_connect('ip_de_ta_machine', 22);
  4. ssh2_auth_password($connection, 'username', 'password');
  5. $stream = ssh2_exec($connection, 'chemin_vers_ton_script');
  6. }
  7. echo '<form action="test.php" method="post">';
  8. echo '<input type="submit" name="scriptage" value="lancer le script">';
  9. echo '</form>';
  10. if (isset($_POST['scriptage'])) executescript();
  11. ?>


 
Et je sais pas à qui je parle, deux nicknames pour une personne ? c'est quoi ce bazarre ? Et il faut poster les les questions de prog dans la section prog hein.


 
si je fais ca j'ai l'erreur suivante :  
Fatal error: Call to undefined function: ssh2_connect() in /home..../www/ssh.php on line 3

Reply

Marsh Posté le 24-03-2005 à 15:00:42   

Reply

Marsh Posté le 24-03-2005 à 15:17:54    

Doit certainement y avoir un fichier a inclure.

Reply

Marsh Posté le 24-03-2005 à 15:24:18    

bah oui mais je trouve pas koi !! snif !

Reply

Marsh Posté le 24-03-2005 à 15:40:51    

http://www.nexen.net/docs/php/anno [...] p?lien=ssh
http://de3.php.net/manual/fr/function.ssh2-exec.php  
 

Citation :

CVS uniquement


 
il faut lire la doc un peu aussi  :pt1cable:  
 
si pas instalable perl=>Net::ssh

Reply

Marsh Posté le 24-03-2005 à 15:59:25    

tu veut utiliser la librairie libssh2?  
 
J'ai voulu faire ca aussi, mais hormi les probleme sde sécurité je n'ai pas réussi à l'installer, pour l'installer un simple PECL (jme rapelle plus de la commande exacte mais fait un man PECL c'est rapide, dsl pour al reponse man loljai pas en memoire) donc tu ouvre une console et tu fait un truc genre PECL install libssh2-beta et ca devrait marcher , si comme moi ca marche pas tu fait un yum check-update PECL je crois .. a moins que ce ne soit un kernel kelkechose . Apres ton PECL marchera et t'installera ta librairie libssh2 (quasi inconue sur google ^^) .. mais elle n'apparaitra toujours pas dans ton phpinfo ... si ca marche prévien moi que je fracasse mon PC merci :)

Reply

Marsh Posté le 24-03-2005 à 16:04:54    

rengzehn a écrit :

http://www.nexen.net/docs/php/anno [...] p?lien=ssh
http://de3.php.net/manual/fr/function.ssh2-exec.php  
 

Citation :

CVS uniquement


 
il faut lire la doc un peu aussi  :pt1cable:  
 
si pas instalable perl=>Net::ssh


oui ca j'avais trouvé depuis un bout de temps
mais pour l'installer c'est autre chose
gros pb de dépendance
plein d'erreur bref ca me saoule
 
d'ailleurs j'avais fait un topic : http://forum.hardware.fr/forum2.ph [...] 0&subcat=0 mais sans grand succés :heink:


Message édité par croli le 24-03-2005 à 16:07:41
Reply

Marsh Posté le 24-03-2005 à 16:24:34    

croli a écrit :

oui ca j'avais trouvé depuis un bout de temps
mais pour l'installer c'est autre chose
gros pb de dépendance
plein d'erreur bref ca me saoule
 
d'ailleurs j'avais fait un topic : http://forum.hardware.fr/forum2.ph [...] 0&subcat=0 mais sans grand succés :heink:


 
en perl alors !?

Reply

Marsh Posté le 24-03-2005 à 16:26:58    

oui mais alors là il faut que tu m'explique car je sais pas du tout comment faire

Reply

Marsh Posté le 24-03-2005 à 16:27:08    

hé bah comme ca on est trois ...

Reply

Marsh Posté le 11-10-2005 à 19:24:49    

on est bien plus que ca je pense moi aussi j'ai jamais reussi a l'installé cette foutu truc !!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed