PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : apache2 + cgi/perl will nicht



timmoh
03.03.05, 18:47
servus,
ich versuch jetzt schon stundenlang ein perl script zum laufen zu bekommen

berechtigungen stimmen datei hat 755
befindet sich im cgi-bin verzeichnis (ScriptAlias /cgi-bin/ /home/user1/public_html/cgi-bin/)

was kann ich noch machen?

timmoh
03.03.05, 19:39
auszug aus dem error logfile:

[Thu Mar 03 19:37:07 2005] [error] [client xxx.xx.xx.xx] Premature end of script headers: test.pl


und das gibt er im browser aus:

Serverfehler!

Die Anfrage kann nicht beantwortet werden, da im Server ein interner Fehler aufgetreten ist.

Fehlermeldung:
Premature end of script headers: test.pl

Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 500

wenn ich es auf der konsole ausführe klappts

Tomek
04.03.05, 11:20
http://httpd.apache.org/docs/misc/FAQ-F.html#premature-script-headers

Lord Fnord
11.03.05, 10:15
Hallo,

Ich hab das selbe Problem. Das merkwürdige ist nur, dass mein Script unter localhost/cgi-bin/ einwandfrei ausgeführt wird und unter localhost/~userXY/cgi-bin/ nicht.
Im Apache-Log steht dann sowas:

[Fri Mar 11 09:59:22 2005] [error] [client 127.0.0.1] Premature end of script headers: test1.pl
Die rechte sind natürlich alle auf 755 (auch im Userdir).

hier mal ein auszug aus meiner httpd.conf:

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

#
# "/var/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/var/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

AddHandler cgi-script .cgi .pl

<Directory /home/*/public_html/cgi-bin>
Options ExecCGI
SetHandler cgi-script
</Directory>
Kann mir jemand sagen, ob ich nen Fehler in der httpd.conf hab? Ich blick da nämlich ehrlich gesagt nicht so 100%ig durch.

Danke!

Achja... die als Header geb ich natürlich auch "Content-type: text/html" an.

marce
11.03.05, 10:41
Achja... die als Header geb ich natürlich auch "Content-type: text/html" an.

mit \n\n hinten dran?

Lord Fnord
11.03.05, 10:54
also der Code meiner Testdatei sieht so aus:

#!/usr/bin/perl -w
# cgi-bin/test.pl - Perl-Test

use CGI qw(param);

print <<ENDE_seite;
Content-type: text/html

<HTML>
<HEAD>
<TITLE>Perl Test</TITLE>
</HEAD>
<BODY>
<H1>Perl klappt!!!</H1>
</BODY>
</HTML>
ENDE_seite

wie gesagt, unter 'localhost/cgi-bin/test.pl' läufts, der selbe Code unter 'localhost/~christian/cgi-bin/test.pl' leider nicht :(

Kann mir denn jemand sagen ob die Konfiguration die ich im vorangegangenen Posting für CGI im Userdir angegeben hab richtig ist?

Danke!