Rechercher : dans
Par :

Formulaire, CGI et commandes Unix

Dernière réponse le 18 mai 2003 à 10:27:00 Sir Drako, le 12 mai 2003 à 15:46:03 
 Signaler ce message aux modérateurs

Je souhaiterais mettre en place un script qui interprète les données d'un formulaire pour les insérer en tant que paramètres dans des commandes unix exécutées sur le serveur. Est-il possible à patir d'un script CGI d'exécuter des commandes UNIX ? Si oui quelle est la syntaxe ?
Aidez-moi s'il vous plait !!!

Meilleures réponses pour « Formulaire, CGI et commandes Unix » dans :
Commandes UNIX Voir Tableau des principales commandes UNIX Commande Unix Description Options ls liste le contenu d'un répertoire -a Affiche tous les fichiers, y compris les fichiers cachés ...
[Shell] Accès aux dernières commandes de l'historique VoirLe shell Linux/Unix regorge de fonctionnalités permettant de gagner du temps. Ainsi, il est possible de remonter dans l'historique des dernières commandes grâce aux flèches de navigation en appuyant sur la flèche du haut. Mais il y a moyen...
Liste des commandes Windows VoirRemarques : Certaines commandes sont dangereuses (l’exemple de SYSKEY) et peuvent causer des problèmes pouvant conduire au formatage. D’autres commandes ne sont pas exécutables sous Windows XP ou des versions antérieures, je ne les ai pas...
[Linux] Utiliser la commande 'su' VoirPréambule Se connecter sous un autre ID utilisateur avec "su" Démarrer un nouveau shell de connexion avec "su -" Revenir au shell précédent Suspendre le shell du compte root Notes Préambule La commande "su" (Switch User, appelée plus...
Introduction aux systèmes UNIX VoirLe système UNIX Le système Unix est un système d'exploitation multi-utilisateurs, multi-tâches, ce qui signifie qu'il permet à un ordinateur mono ou multi-processeurs de faire exécuter simultanément plusieurs programmes par un ou plusieurs...
Systèmes UNIX - Le shell VoirIntroduction au shell L'interpréteur de commandes est l'interface entre l'utilisateur et le système d'exploitation, d'où son nom anglais «shell», qui signifie «coquille». Le shell est ainsi chargé de faire l'intermédiaire entre le système...

1

sebsauvage, le 12 mai 2003 à 15:55:29

C'est sans problème !

Un CGI n'est rien d'autre qu'un programme en ligne de commande qui lis les variables d'environnement et écrit du HTML (ou autre) sur la sortie standard.

On peut donc faire des CGI en n'importe quoi (shell, awk, perl, Python, basic, c, c++, bat...).

Va voir dans la configuration de ton serveur web: tu peux spécifier quels fichiers ou répertoire doivent être considérés comme CGI et exécutés (et non pas envoyé à l'internaute).

Le serveur HTTP exécutera les programme en leur passant les paramètres dans l'environnement (URL, adresse IP, paramètres, formulaires...)

Je présume que tu utilises Apache ?
Il y a des exemples (dont un en perl):
http://httpd.apache.org/docs/howto/cgi.html.html

mais rien ne t'empêche de le faire en simple script shell.

Répondre à sebsauvage

5

Sir Drako, le 15 mai 2003 à 16:22:14

Merci !
Sais-tu configurer le serveur Apache v.1.3 sous Unix pour qu'il exécute localement un script CGI sans envoyer vers l'internaute ? J'ai beau éditer le fichier httpd.conf, je ne parviens pas à trouver l'option.

Répondre à Sir Drako

2

jisisv, le 12 mai 2003 à 15:59:34

Bonjour,
Sur que c'est possible.
Mais vérifie bien les paramètres fournis en entrée.
Par exemple filtre sur les caractères spéciaux du shell,
sinon bonjour les courants d'air dans ton système.

Johan

The software said "Requires Windows98, Win2000, or better,
So I installed Unix.

Répondre à jisisv

3

Rokia, le 13 mai 2003 à 11:40:45

Bonjour, tu peux me dire stp le langage que tu veux utiliser avec CGI (perl, php...).
a+

Répondre à Rokia

4

Sir Drako, le 15 mai 2003 à 15:25:25

Salut, en fait je souhaiterais utiliser du PHP si possible. J'ai tenté un script en Perl, mais il ne peut exécuter que la commande "ls". L'idéal, ce serait de pouvoir exécuter un programme à partir d'une machine distante en générant une ligne de commandes Unix sur le serveur.

Répondre à Sir Drako

6

 Rokia, le 18 mai 2003 à 10:27:00

Bonjour
Bon, sincerement je ne suis pas une vraie experte, mais pour ce qui conserne les scripts perl, vous ne pouvez pas executer une commande Unix, sauf si vous utilisez EXPECT, moi j'administre des files d'attentes avec du perl/cgi en utilisant expect et ca marche tres bien.
bon courage
Rokia

Répondre à Rokia