Jörgen Willisch: Apache - Perl Installation

Guten Tag an alle Forumleser,

die diese Zeilen lesen und mir eventuell helfen können.
Die Installation der Software Websurfer Apache Version 1.3.3 und
AcktivePerl 522 hat sich so einfach, wie bereits auch im Forum erwähnt
wurde, realisieren lassen.

Auch die Anpassung des Websurfers Apache, sowie des Perl Interpreters an
meine Windows Umgebung konnte ich, durch dementsprechende Forumsbeiträge
gut nachvollziehen.

Der Websurfer Apache funktioniert beim eintippen der Adresse
http://localhost in einen Browser ordnungsgemäß mit dem Öffnen des
Apache Screenshot.
Auch das bei ActivePerl mitgelieferte Script ( example.pl ) öffnet beim
doppelten Mausklick.

Also soweit alles in Ordnung und trotzdem habe ich den Verdacht, dass
noch nicht alles im Lot ist. Meine Vermutung beziehen sich auf
folgende Gegebenheiten.

Im Browser htttp://localhost/cgi-bin/example.pl eingetippt erscheint
folgende Fehlermeldung: Was sinngemäß übersetzt ungefähr heißt

------------------------------
Interner Serverfehler

Der Server stieß auf einen internen Fehler oder ein internes
misconfiguration und war außerstande, Ihr Ersuchen zu beenden.

Bitte wendet sich an den Serververwalter, projekt-dienstleistungen@
t-online.de und zu informieren sie dessen Sie den Fehler aufgetreten,
und irgend etwas, der Sie das getan haben könnten, kann den Fehler
verursacht haben.

mißgebildeter Kopfsprung von Schrift. Schlechtes Kopfsprung= Hallo von
ActivePerl! C : /programme/apache group/Apache/cgi-bin/example.pl

Apache/1.3.3 Server an localhost Hafen 80
   -------------------------------------  
Der Perl Script funktioniert zwar direkt über den Perl Interpreter, aber
nicht über den Browser.

Eine andere Merkwürdigkeit habe ich erfahren, dass ich in der DOS
Eingabeaufforderung
das Perl Script example.pl wiederum durch C:\programme\apache
group\apache\cgi-bin> example.pl auch nicht aufrufen kann. Hier folgt
die Fehlermeldung:

This program cannot be run in Dos mode - Dieses Programm kann nicht in
Dos Modus geführt werden.

Auch bei der Überprüfung der Funktionalität meines Netzwerkprotokolles
TCP/IP mit Hilfe der ping.exe über die MS-DOS - Eingabeaufforderung
c:\windows>ping 127.0.0.1 oder localhost erscheint die gleiche
Fehlermeldung.

Über ein paar Hinweise wäre ich sehr dankbar, damit ich Schritt für
Schritt der Lösung des Problems näher komme.

Mit freundlichen Grüßen
Jörgen Willisnch
projekt-dienstleistungen@t-online.de

  1. mißgebildeter Kopfsprung von Schrift. Schlechtes Kopfsprung= Hallo von
    ActivePerl! C : /programme/apache group/Apache/cgi-bin/example.pl

    ... puh, also *so* herzlich habe ich schon lange nicht mehr gelacht. (ROTFLMAO ...)
    (Manchmal sind englische Originale *doch* hilfreicher als *diese* Übersetzung ... brrrrrr ...)

    Also, was da eigentlich stehen sollte - ich übersetze mal aus dem Kopf zurück:
    "Malformed header of script. Bad header=Hallo of (scriptname).

    Zu *deutsch*: Fehlerhaft aufgebauter Kopfabschnitt (der Ausgabe) des (Perl-) Skripts. Ausgebener Wert: "Hallo".
    DeinSkript gibt also einfach "hallo" aus.

    Auf der Kommandozeile darfst Du das auch.
    Via CGI jedoch muß vorher (!) ein korrekter HTTP-Header der Art "Content-type: text/plain\n\n" oder so kommen. Der fehlt einfach, und "Hallo" ist in diesem Sinne "fehlerhaft aufgebaut".

    This program cannot be run in Dos mode - Dieses Programm kann nicht in
    Dos Modus geführt werden.

    Was immer dieses Beispielprogramm tut: Wenn es 32-Bit-Funktionen aufruft, dann wird es in der 16-Bit-Umgebung von DOS nicht funktionieren können.

    Auch bei der Überprüfung der Funktionalität meines Netzwerkprotokolles
    TCP/IP mit Hilfe der ping.exe über die MS-DOS - Eingabeaufforderung
    c:\windows>ping 127.0.0.1 oder localhost erscheint die gleiche
    Fehlermeldung.

    Auch Dein "ping" könnte ein 32-Bit-Programm sein.
    Welches Windows hast Du? Wäre es Windows NT, dann würde ich "cmd" statt "command"
    als "DOS"-Box nehmen (das ist 32-Bit-fähig).

    1. ... puh, also *so* herzlich habe ich schon lange nicht mehr gelacht. (ROTFLMAO ...)
      (Manchmal sind englische Originale *doch* hilfreicher als *diese* Übersetzung ... brrrrrr ...)

      ... geht mir genauso. Herrliche Sprache !!!

      aber worauf noch hingewiesen werden muesste, sind ein paar weitere Kleinigkeiten:
      1. Wenn sich schon jemand den Apache (der uebrigens ein Web"server" ist und kein Web"surfer") neu installiert, warum dann die Version 1.3.3 und nicht gleich die letzte Ausgabe 1.3.12 oder evntuell de 2.0beta ?
      In den neueren Versionen sind naemlich einige Dinge besser vorkonfiguriert (http.conf), zum Beispiel auch der "addHandler" fuer die Verwendung von perl-scripts.

      2. Diese so wunderschoen uebersetzten Fehlermeldungen treten dann auf, wenn der Apache ueberhaupt nicht mit dem script umgehen kann; konkret: es wird zwar das "Lesen" des scripts ermoeglicht, aber keinerlei Befehl ausgefuehrt, da offensichtlich ein wie auch immer geartetes ExecCGI nicht in der Konfigurationsdatei festgeschrieben wurde.

      3. Wenn schon so ein ausfuehrliches posting, waers ganz hilfrei gewesen, dann auch noch das script "example.pl" sehen zu koennen, auf das Bezug genommen wird. "Beispiele" gibts schliesslich wie Sand am Meer, und vielleicht ist auch in diesem script was verkehrt.

      Insgesamt waere vielleicht zu raten, dass eine neuere Version des Apache installiert werden und dann auch eine gruendlichere Beschaeftigung mit der http.conf erfolgen sollte  -  in den Kommentaren innerhalb dieser Konfigurationsdatei ist eigentlich alles beschrieben, was _diese_ Fragen loesen helfen kann. Allerdings steht zu befuerchten, dass, wer _so_ aus dem Englischen ins Deutsche uebersetzt, die Priginalkommentare nicht leicht verstaendlich finden wird.

      schoenste Gruesse

      Christoph S.