Exec format error [CGI] - Programmation
Marsh Posté le 27-02-2002 à 15:54:00
Gardien a écrit a écrit : bon, ca me laisse perplexe : un formulaire html avec 5 champs : <FORM action="/cgi-bin_gardien/request.cgi" method="post" enctype="text/plain"> le script ne fait rien a part afficher une page blanche : #!/bin/sh echo "Content-Type: text/html" echo "" echo "<html>" echo "<head>" echo "<title>Ceci est le résultat du questionnaire</title>" echo "</head>" echo "<body">" echo "</body></HTML>" Résultat : 500 Internal Server Error dans le log du serveur : [Wed Feb 27 15:20:26 2002] [error] (8)Exec format error: exec of /home/gardien/scripts/request.cgi failed [Wed Feb 27 15:20:26 2002] [error] [client xxx.xxx.xxx.xxx] Premature end of script headers: /home/gardien/scripts/request.cgi J'ai un autre script dans le meme répertoire qui fonctionne lui (j'en conclue que la config d'apache est correcte). Les droits sont correctes (755). Une idée ? |
essaie avec
echo "Content-Type:text/html"
Marsh Posté le 27-02-2002 à 16:11:13
What does it mean when my CGIs fail with "Premature end of script headers"? -> http://httpd.apache.org/docs/misc/FAQ-F.html
Peut etre que ça t'aidera...
hihi
Marsh Posté le 27-02-2002 à 16:11:45
est-ce que tu peux exécuter le script en ligne de commande et si oui est-ce que ca passe?
Marsh Posté le 27-02-2002 à 16:20:39
Ton autre script, celui qui marche, c'est quoi ? C'est aussi un shell script ou alors c'est du Perl ou autre chose ?
hihi
Marsh Posté le 27-02-2002 à 16:22:22
ET les ; en fin de ligne ca aide aussi
pour ecrire du cgi il faut faire un
print "Content-Type:text/html\n\n";
mais il ne faut pas oublier les 2 retour à la ligne
sinon cette ligne je sias pas à koi elle sers
#!/bin/sh
essai ca :
#!/bin/perl/ -w
ou un truc du style bref l'emplacement de perl et -w signifie avec les messages d'erreur (warning)
mais la solution d'exécuter tes scripts en console peut te permettre de voir directement le probléme
perl -w /home/gardien/scripts/request.cgi
Marsh Posté le 27-02-2002 à 16:24:54
SteF_DOBERMANN a écrit a écrit : ET les ; en fin de ligne ca aide aussi pour ecrire du cgi il faut faire un print "Content-Type:text/html\n\n"; mais il ne faut pas oublier les 2 retour à la ligne sinon cette ligne je sias pas à koi elle sers #!/bin/sh essai ca : #!/bin/perl/ -w ou un truc du style bref l'emplacement de perl et -w signifie avec les messages d'erreur (warning) mais la solution d'exécuter tes scripts en console peut te permettre de voir directement le probléme perl -w /home/gardien/scripts/request.cgi |
ya pas que le Perl pour faire des CGI, meme si c'est le plus repandu
Marsh Posté le 27-02-2002 à 16:26:06
l'autre script qui fonctionne est aussi écrit en shellscript (c pas du perl). Ceci dit je v essayer les 2 retours lignes
Marsh Posté le 27-02-2002 à 16:26:31
oups
j'avais oublié
Marsh Posté le 27-02-2002 à 16:31:37
C'est ça : les 2 retours a la ligne sont INDISPENSABLES !!! Je suis con, j'avais meme pas vu...
Si c'est pas ça, je me coupe une oreille
Bien vu dobermann... par contre le coup du remplace /bin/sh par /bin/perl ->
hihi
PS : il faut tjs executer tes scripts en ligne de commande avant de les essayer sous le serveur, ça permet d'eviter tres souvent les "Premature end of script headers"...
[jfdsdjhfuetppo]--Message édité par impulse--[/jfdsdjhfuetppo]
Marsh Posté le 27-02-2002 à 16:35:05
Bien vu SteF_DOBERMANN, ct les 2 retours lignes.
2h de perdues pour 2 retour lignes, ca fait une bonne moyenne de 1h par retour ligne, à ce rythme j'ai fini mon projet dans 4586 jours :=)
Merci all
Marsh Posté le 27-02-2002 à 16:36:07
Ouf, j'ai toujours mes 2 oreilles.
J'ai eu peur un instant.
hihi
Marsh Posté le 27-02-2002 à 18:09:00
Merci:jap:
Je sais, je me suis pris le tete aussi pour c deux retour chariot
Marsh Posté le 27-02-2002 à 15:29:47
bon, ca me laisse perplexe :
un formulaire html avec 5 champs :
<FORM action="/cgi-bin_gardien/request.cgi" method="post" enctype="text/plain">
le script ne fait rien a part afficher une page blanche :
#!/bin/sh
echo "Content-Type: text/html"
echo ""
echo "<html>"
echo "<head>"
echo "<title>Ceci est le résultat du questionnaire</title>"
echo "</head>"
echo "<body">"
echo "</body></HTML>"
Résultat : 500 Internal Server Error
dans le log du serveur :
[Wed Feb 27 15:20:26 2002] [error] (8)Exec format error: exec of /home/gardien/scripts/request.cgi failed
[Wed Feb 27 15:20:26 2002] [error] [client xxx.xxx.xxx.xxx] Premature end of script headers: /home/gardien/scripts/request.cgi
J'ai un autre script dans le meme répertoire qui fonctionne lui (j'en conclue que la config d'apache est correcte). Les droits sont correctes (755).
Une idée ?
[jfdsdjhfuetppo]--Message édité par Gardien--[/jfdsdjhfuetppo]