Rechercher : dans
Par :

Problème CGI sur apache2/debian

Dernière réponse le 1 jui 2008 à 18:34:56 tlep, le 1 jui 2008 à 10:38:30 
 Signaler ce message aux modérateurs

Bonjour,

je ne parviens pas trop à comprendre comment faire fonctionner le cgi (sur apache2/debian).

J'ai bien configuré le serveur apache2, pour qu'il attaque les scripts dans /usr/lib/cgi-bin/, et mis le scriptalias.

J'ai alors 2 problèmes :

1/ Sous firefox, la page affiche le code source de la page au lieu de traduire normalement les balises, ce qui n'est pas le cas sous Internet Explorer.
2/ J'ai fait un cgi en perl, qui renvoie des "die" en cas d'arguments incorrects. Ces "die" ne sont pas envoyés au navigateur.

#!/usr/bin/perl

use XML::Simple;
use Data::Dumper;
print "Content-type : text/html\n\n";
print "<HTML>\n<BODY BGCOLOR=\"#ff0000\">\n";
opendir R_DIR,$ARGV[0] or die "E/S : $!\n";

Le script s'arrête à print "<HTML>\n<BODY BGCOLOR=\"#ff0000\">\n";, et les logs d'erreur d'apache disent :
[Tue Jul 01 10:30:51 2008] [error] [client xxx.xxx.xxx.xxx] E/S : No such file or directory.
En fait, les erreurs produites par mon script sont envoyées comme messages d'erreurs dans les logs apache, et non affichées dans le navigateur !

:-((

Configuration: Windows XP
Firefox 2.0.0.11

Meilleures réponses pour « Problème CGI sur apache2/debian » dans :
[Debian][HowTo] Xorg7 - installer drivers nvidia VoirXorg7 - installer drivers nvidia Dans ce tutoriel nous allons aborder comment installer les drivers nvidia sous debian. Tout ce qui dit est valable pour d'autres distributions basées sur debian comme par exemple ubuntu. Toutefois pour cette...
[Ubuntu/Debian] Installation automatique des drivers Nvidia/Ati VoirInstallation automatique des drivers Ati et Nvidia de votre carte graphique sous Ubuntu /Debian Introduction Installation de Envy Installation du driver Dernière étape Compléments Introduction Il y a plusieurs manières...
Introduction à la programmation des CGI VoirPrésentation de l'interface CGI Un script CGI (Common Gateway Interface, traduisez interface de passerelle commune) est un programme exécuté par le serveur web (on dit généralement « côté serveur »), permettant d'envoyer au navigateur de...
CGI - Réception et traitement des données VoirEnvoyer des données à un script CGI L'envoi de données à un script CGI se fait par l'intermédiaire d'un formulaire HTML. Les formulaires HTML se créent à l'aide de la balise contenant des boutons, des champs, des listes et/ou des cases à...
L'affichage de données sur le navigateur avec les CGI VoirBut d'un script CGI Les scripts CGI ont pour but d'afficher des pages Web générées par un programme informatique, d'où la dénomination de pages web dynamiques pour les pages créées par ce moyen. Toutefois, étant donné que le serveur renvoie telles...

1

 kiki, le 1 jui 2008 à 18:34:56

Pour un cgi, il faut que le group soit www-data (groupe de l'utilisateur apache2 par défaut).
Il faut aussi que le fichier soit à 755 pour l'exécution par www-data.

Ensuite l'extension doit etre .cgi ou .pl (pour le perl).

Il faut que le fichier soit transféré par FTP en mode ASCII. Par défaut souvent les logiciels FTP transfèrent en mode BINARY. , perl n'aime pas du tout.

Cordialement,

Répondre à kiki
Collection CommentÇaMarche.net