Serverfehler beim aufruf eines Scriptes

Alles, was den Apache betrifft, kann hier besprochen werden.

Serverfehler beim aufruf eines Scriptes

Postby Kaffeebohne » 23. September 2003 12:33

Hallo,

ich habe eine Fehlermeldung wenn ich mit folgender html Seite das Perlscript laufen lasse:
(die fehler wurden vorher 100%ig vorher korrigiert...)

die Datei 1st-cgi.pl liegt unter \wampp\cgi-bin\1st-cgi.pl
und die html Datei liegt unter:
\wampp\httdocs\ueb\tc.html
Hier der HTML Code:
    <!doctype html public "-//W3C//DTD HTML 4.0 //EN">
    <html>
    <head>
    <title>CGI-Test</title>
    </head>
    <body>
    <Form "/cgi-bin/1st-cgi.pl" methode="post">
    <hr>
    <input name="eingabezeile" type="TEXT" size= 40 >
    <input type=submit value="Absenden">
    <input type=reset value="Formular L&ouml;schen" >
    <hr>
    </body>
    </html>
und hier der perl (cgi) Code:
    #!\wampp2\perl\bin\perl.exe
    $daten=<STDIN>;
    print "Content-type: text/html\n\n";
    print '<html>';
    print '<head>';
    print '<title>AntwortSeite</Title>';
    print '</head>';
    print '<body>';
    print '<HR>';
    print "Eingabe war : $daten";
    print '<hr>';
    print '</body>';
    print '</html>';

Und jetzt der Fehler:

Serverfehler!

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

Fehlermeldung:
Usage: Apache::RequestRec::read(r, buffer, bufsiz, offset=0) at D:/wampp2/perl/site/lib/Apache/compat.pm line 364.

Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 500
localhost
23.09.2003 12:56:45
Apache/2.0.46 (Win32) mod_perl/1.99_10-dev Perl/v5.8.0 PHP/4.3.2 mod_ssl/2.0.46 OpenSSL/0.9.7b

unter Linux habe ich auch eine fehlermeldung (ich habe es einmal als Linux und einmal auch als Windows zu laufen)
ich bin echt am Verzweifeln da ich bald anfangen muß in Perl zu Programieren für CGI.
<°)((((><
Kaffeebohne
 
Posts: 6
Joined: 22. September 2003 16:19

Postby Benzman » 23. September 2003 14:03

Vor du CGI lernst, solltest du vielleicht erstmal richtig HTML können :D

Die Zeile
Code: Select all
<Form "/cgi-bin/1st-cgi.pl" methode="post">

muss so lauten:
Code: Select all
<Form action="/cgi-bin/1st-cgi.pl" method="post">
User avatar
Benzman
 
Posts: 132
Joined: 27. July 2003 18:46
Location: Bayern

Postby Kaffeebohne » 23. September 2003 15:38

Benzman wrote:Vor du CGI lernst, solltest du vielleicht erstmal richtig HTML können :D

Bevor Du antwortest solltest Du erstmal richtig mein Posting durchlesen! 8)
Der Fehler wurde lange schon korrigiert!!!! (naja heute Vormittag)
Aber nun für alle noch mal auch das error_log des Apache unter Linux!:
Auszug:
[...][error][client::1]Premature end if script headers: 1st-cgi.pl, refer:http://localhndost/ueb/1st-cgi.html

und Windows:
[Tue Sep 23 16:42:08 2003] [error] 1148: ModPerl::Registry: Usage: Apache::RequestRec::read(r, buffer, bufsiz, offset=0) at D:/wampp2/perl/site/lib/Apache/compat.pm line 364.

[Tue Sep 23 16:42:11 2003] [error] 1148: ModPerl::Registry: Usage: Apache::RequestRec::read(r, buffer, bufsiz, offset=0) at D:/wampp2/perl/site/lib/Apache/compat.pm line 364.

Ich hoffe das hilft-1
Nebenbei ich habe das ganze auch nochmal mit dem janaserver2 ausprobiert.
Da ruft er das Script auf, aber er liest 'post' nicht in <STDIN> ein.
und deshalb bekomme ich keine Ausgabe der 'eingabe' -Zeile aus der Html Datei :(
Gruß Micha in der Hoffung jemand hier von euch kann mir helfen
<°)((((><
Kaffeebohne
 
Posts: 6
Joined: 22. September 2003 16:19

Postby Benzman » 23. September 2003 15:56

Hmm, die eine Zeile muss ich wohl übersehn haben. Außerdem kenn ich mich auch nicht mit Perl aus. Ich hab nur das Script kopiert, die Fehler ausgebessert und dann getestet und bei mir hats dann funktioniert. Vielleicht liegts dran dass du noch ne ältere Version von XAMPP hast. Versuch es mal mit der neusten.
User avatar
Benzman
 
Posts: 132
Joined: 27. July 2003 18:46
Location: Bayern

Postby Guest » 23. September 2003 17:51

Gib mal folgendes ein!

#!\wampp2\perl\bin\perl.exe
$daten=0
$daten=<STDIN>;
print "Content-type: text/html\n\n";
print '<html>';
print '<head>';
print '<title>AntwortSeite</Title>';
print '</head>';
print '<body>';
print '<HR>';
print "Eingabe war : $daten";
print '<hr>';
print '</body>';
print '</html>';

ist nur so ein gedanke! denn wenn Du bei PErl die Variable nicht initialisierst dann klappts nicht.

Peter
Guest
 

Neuste Version habe ich

Postby Kaffeebohne » 23. September 2003 18:08

...unter Linux
aber es läuft nicht :? wie gesagt der Fehler ist aus gebessert. ich stell oben mal das richtig...
so long hoffe auf Antworten die mir helfen!!
<°)((((><
Kaffeebohne
 
Posts: 6
Joined: 22. September 2003 16:19


Return to Apache

Who is online

Users browsing this forum: No registered users and 2 guests