Perl-Datei tut nichts ...

Alles, was Perl betrifft, kann hier besprochen werden.

Perl-Datei tut nichts ...

Postby Dummie » 14. December 2004 10:20

Hallo,
das ist mein erster Beitrag hier - nachdem ich stundenlang in vorhandenen Themen gesucht habe, ob jemand schon mal das Problem hatte, hab ich jetzt aufgegeben und versuch es mal so.
Ich bin blutiger Anfänger - habe mir ein Buch über CGI/Perl gekauft und wollte loslegen. Schon beim ersten Programm stecke ich allerdings fest.

Ich habe eine htm-Datei erstellt, in der eine Perl-Datei aufgerufen werden soll. Doch leider passiert das nicht, sondern es wird mir ein Dateidownload angeboten (Öffnen oder Speichern). Selbst wenn ich dann Öffnen wähle, passiert überhaupt nichts ...
Hier ist der Code der .pl-Datei:

#!c:\programme\apachefriends\xampp\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>';

Mit der ersten Zeile habe ich schon rumexperimentiert - aber das Ergebnis ist immer dasselbe! :cry:

Kann mir jemand helfen?

Viele Grüße
Steffi
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby Dummie » 15. December 2004 12:35

Hallo!!!:!:
Ist da jemand??? :?:
:?
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby Wiedmann » 15. December 2004 12:42

Ich habe eine htm-Datei erstellt, in der eine Perl-Datei aufgerufen werden soll.

Kannst du das genauer Beschreiben?
Wie rufst du die Dateien jeweils auf?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Dummie » 15. December 2004 13:07

Hallo Wiedmann (ist das dein Vor- oder Nachname??),
ich nehme an, du meinst die html-Datei.
Eigentlich öffne ich sie direkt aus dem Windows-Explorer (per Doppelklick) - da wird dann automatisch der IE gestartet ...
Ich hoffe, das ist das, was du wissen wolltest!
Gruß Steffi
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby Wiedmann » 15. December 2004 13:35

Sobald eine serverseitige Scriptsprache wie Perl oder PHP mit ins Spiel kommt, musst du deine Dateien auch zwingend über den Server öffnen:
http://localhost/test.htm
http://localhost/cgi-bin/test.pl
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Dummie » 15. December 2004 14:13

Der Pfad, in dem sich die html-Datei befindet heißt:

C:\Programme\apachefriends\xampp\htdocs\Tests

Die Datei selbst Testneu.htm

Was muss ich denn da aufrufen??
Ich hab schon folgendes versucht:
http://localhost/Tests/Testneu.htm
http://localhost/htdocs/Tests/Testneu.htm
http://127.0.0.1/Tests/Testneu.htm

Jedes Mal erhalte ich die Fehlermeldung "Die Seite kann nicht angezeigt werden."

Wenn ich den Pfad C:\Programme\... angebe, dann startet die html-Datei (aber eben nur die ...)
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby Wiedmann » 15. December 2004 14:18

C:\Programme\apachefriends\xampp\htdocs\Tests
Die Datei selbst Testneu.htm
Was muss ich denn da aufrufen??

http://localhost/Tests/Testneu.htm
oder
http://127.0.0.1/Tests/Testneu.htm

Jedes Mal erhalte ich die Fehlermeldung "Die Seite kann nicht angezeigt werden."

Läuft der Server überhaupt? Also "xampp_start.exe" oder "apache_start.bat" ausgeführt und das Fenster ist offen?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Dummie » 15. December 2004 14:44

Oh - entschuldige bitte - das hatte ich vergessen *schäm* ...
Jetzt findet er die Datei.
Allerdings macht er bei der Perl-Datei weiterhin Schwierigkeiten ...
Diesmal kommt ne Fehlermeldung:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.


--------------------------------------------------------------------------------

Apache/2.0.52 (Win32) mod_perl/1.99_16 Perl/v5.8.4 mod_ssl/2.0.52 OpenSSL/0.9.7d PHP/5.0.2 Server at localhost Port 80


Was ist denn das nun wieder??
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby Wiedmann » 15. December 2004 15:00

Was steht denn im "error.log" (C:\Programme\apachefriends\xampp\apache\logs)?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Dummie » 15. December 2004 15:09

Das ist das von heute (ich nehme an, das reicht??):

[Wed Dec 15 14:40:15 2004] [notice] Parent: Created child process 54632
[Wed Dec 15 14:40:33 2004] [notice] Child 54632: Child process is running
[Wed Dec 15 14:40:33 2004] [notice] Child 54632: Acquired the start mutex.
[Wed Dec 15 14:40:33 2004] [notice] Child 54632: Starting 250 worker threads.
[Wed Dec 15 14:40:35 2004] [error] [client 127.0.0.1] C:/Programme/apachefriends/xampp/htdocs/Tests/cgi-bin/1st-cgi.pl is not executable; ensure interpreted scripts have "#!" first line, referer: http://localhost/tests/Testneu.htm
[Wed Dec 15 14:40:35 2004] [error] [client 127.0.0.1] (9)Bad file descriptor: don't know how to spawn child process: C:/Programme/apachefriends/xampp/htdocs/Tests/cgi-bin/1st-cgi.pl, referer: http://localhost/tests/Testneu.htm
[Wed Dec 15 14:40:42 2004] [error] [client 127.0.0.1] C:/Programme/apachefriends/xampp/htdocs/Tests/cgi-bin/1st-cgi.pl is not executable; ensure interpreted scripts have "#!" first line, referer: http://localhost/tests/Testneu.htm
[Wed Dec 15 14:40:42 2004] [error] [client 127.0.0.1] (9)Bad file descriptor: don't know how to spawn child process: C:/Programme/apachefriends/xampp/htdocs/Tests/cgi-bin/1st-cgi.pl, referer: http://localhost/tests/Testneu.htm
[Wed Dec 15 14:41:09 2004] [error] [client 127.0.0.1] C:/Programme/apachefriends/xampp/htdocs/Tests/cgi-bin/1st-cgi.pl is not executable; ensure interpreted scripts have "#!" first line, referer: http://localhost/tests/Testneu.htm
[Wed Dec 15 14:41:10 2004] [error] [client 127.0.0.1] (9)Bad file descriptor: don't know how to spawn child process: C:/Programme/apachefriends/xampp/htdocs/Tests/cgi-bin/1st-cgi.pl, referer: http://localhost/tests/Testneu.htm
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby deepsurfer » 15. December 2004 17:51

zwischenfrage:

Hast du mal die XAMPP eigenen Testscripte ausprobiert ??

Code: Select all
http://localhost/cgi-bin/mini.cgi
(sollte dir Hello WorldWideWeb auf den Monitor zaubern)

Verschiedene Scripte im verzeichnis
Code: Select all
c:\programme\apachefriends\xampp\cgi-bin\


chirio
Deep
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby Dummie » 15. December 2004 21:24

Hallo deepsurfer,

die Datei mini.cgi hab ich in dem Verzeichnis nicht gefunden.
Alle anderen habe ich ausprobiert - die funktionieren alle:
cgi.cgi
guestbook-de.cgi
guestbook-en.cgi
perltest.cgi
drivers.pl
printenv.pl

Gruß Steffi
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby deepsurfer » 16. December 2004 01:01

die Datei mini.cgi hab ich in dem Verzeichnis nicht gefunden.

Huchhh.. sorry, war ein eigenes von mir, klar das du die nicht haben konntest.


Obwohl dein Auszug des LOGs es nicht bestätigt vermute ich dennoch das dein geschriebenes script am falschen platz liegt.
Denn bei mir läuft es tadellos

kopiere deine 1st-cgi.pl in das c:\programme\apachefriends\xampp\cgi-bin\ Verzeichnis.

dann rufe es mal mit htttp://localhost/cgi-bin/1st-cgi.pl auf, es sollte
ein Seite erscheinen mit zwei Horizontal-Rules und dazwischen steht "Eingabe war: "

wenn das erscheint, dann liegt der fehler in deiner Test.htm , es wäre gut wenn du diese auch mal hier postest, dann kann man dir genaueres erklären anhand des codes.
Im grossen und ganzen ist der HTMLcodes klar, aber mal schaun wo du da vielleicht etwas falsch eingetragen hast (unwissendlich)

chirio
Deep
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby Dummie » 16. December 2004 07:09

"kopiere deine 1st-cgi.pl in das c:\programme\apachefriends\xampp\cgi-bin\ Verzeichnis"

hab ich gemacht (wie macht ihr, dass die Zitate in so nem Rahmen stehen??) - da kommt derselbe Fehler:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.


--------------------------------------------------------------------------------

Apache/2.0.52 (Win32) mod_perl/1.99_16 Perl/v5.8.4 mod_ssl/2.0.52 OpenSSL/0.9.7d PHP/5.0.2 Server at localhost Port 80


Hier gleich noch die error.log:

[Thu Dec 16 06:59:33 2004] [notice] Parent: Created child process 3616
[Thu Dec 16 06:59:46 2004] [notice] Child 3616: Child process is running
[Thu Dec 16 06:59:46 2004] [notice] Child 3616: Acquired the start mutex.
[Thu Dec 16 06:59:46 2004] [notice] Child 3616: Starting 250 worker threads.
[Thu Dec 16 06:59:46 2004] [error] [client 127.0.0.1] C:/Programme/apachefriends/xampp/cgi-bin/1st-cgi.pl is not executable; ensure interpreted scripts have "#!" first line
[Thu Dec 16 06:59:46 2004] [error] [client 127.0.0.1] (9)Bad file descriptor: don't know how to spawn child process: C:/Programme/apachefriends/xampp/cgi-bin/1st-cgi.pl


Ich kann mit diesen Hieroglyphen gar nichts anfangen. Wenn's nicht allzu viel Arbeit macht - kannst du mir das ganz kurz und schmerzlos erklären??
Was mir auch noch nicht ganz klar ist: Was ist eigentlich der localhost? Ist das das Verzeichnis C:Programme/apachefriends/xampp/ oder das Verzeichnis C:Programme/apachefriends/xampp/htdocs/ ??

Vielen Dank für eure Mühe und viele Grüße
Steffi
Dummie
 
Posts: 24
Joined: 14. December 2004 10:11
Location: bei Naumburg

Postby deepsurfer » 16. December 2004 08:10

das mit den rahmen ist einfach und ein Darstellung die von diesem Forumscript zur Verfügung gestellt wird.

Schreib ein Text (oder kopiere es dir irgendwo her) und markiere das geschriebene, wenn markiert einfach mit der Maus über diesem Schreibbereich auf Code klicken, schon werden die sogenannten TAGS vor und nach dem Text gesetzt. Wenn du dann auf "Vorschau" oder absenden klickst siehst du das ergebnis.

Um den Hintergrund für diese Zusätze zu erklären wäre mal eine gesonderte "Geschichtsstunde" einzuräumen :)

meanwhile:
Das es bei dir nicht funktioniert ist jetzt etwas komisch.
Bitte Kopiere dein Script was du hier gepostet hast aus diesem Forum mal heraus und erstelle eine völlig neue datei mit dem namen " jetztaber.cgi "
Diese datei bitte in das CGI-BIN verzeichnis von deinem xampp ablegen.

Rufe die datei dann das neue(alte) Script direkt mit
http://localhost/cgi-bin/jetztaber.cgi
auf. Wenn es dann immer noch nicht geht, ist etwas gewaltig komisches bei dir los. :shock:

Frage zum begriff "localhost"
localhost ist das equivalent zu der IPadresse 127.0.0.1 und ist ein standart in der Netzwerktechnik (sehr einfach ausgedrückt)
Damit weiss dein PC technisch gesehen wer/was/wo die "127.0.0.1" ist und umgekehrt, wer/was/wo der "localhost" ist.

Du kannst auch deinen XAMPP mit http://127.0.0.1 aufrufen und ist gleichbedeutend wie "localhost"

Diesen Umstand wird auch in der Konfiguration des XAMPP genutzt.
Durch den eintrag von "localhost" in der Konfiguration von XAMPP ist sichergestellt das man mit einem simplen namen das gewünschte ergebnis erhält.
Dieser Name "localhost" kann auch anders heissen, bedarf aber dann einiger Zusätzlicher Einstellungen sowohl in deinem PC als auch in der Konfigurtion des XAMPP.

Zu diesem Schritt rate ich dir aber erst wenn du dich ein wenig besser mit den zusammenhängen zwischen XAMPP <-> PC vertraut gemacht hast.
Denn dann enstehen weniger fragen deren Antworten vielleicht wieder neu Fragen aufwerfen würden etc.ect.etc.


chirio
Deep
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Next

Return to Perl

Who is online

Users browsing this forum: No registered users and 3 guests