Apache cgi Skript liefert .pl file aber nicht dessen output

  • Hi,

    ich experimentiere gerade mit dem Apache 2.2 Webserver. Habe ihn (nur für meinen eigenen User, also start von Konsole, nicht als Service) auf einem WinXP SP3 installiert
    (als binary: httpd-2.2.17-win32-x86-openssl-0.9.8o.msi von
    http://httpd.apache.org/download.cgi#verify )

    Funktioniert prima und er liefert mir lokal perfekt htm files zurück und mein Browser zeigt sie an. Also z.B. http://<meineIP>:8080/welcome.htm
    und zeigt mir das welcome.htm an...

    Jetzt probiere ich CGI - Skipting. Meine Direktiven im conf file sind:

    ScriptAlias /cgi-bin "C:/Programme/Apache Software Foundation/Apache2.2/cgi-bin"
    <Directory "C:/Programme/Apache Software Foundation/Apache2.2/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
    </Directory>

    Mein cgi Skipt hw.pl sieht so aus:

    #!c:/perl/bin/perl.exe
    print "Content-type: text/plain; charset=iso-8859-1\n\n";
    print "Hello world!\n\n";

    ALSO:
    sollte der Apache ALLE files in dem Dir als cgi's interpretieren, sie ausführen und deren output in meinen Browser schicken. Wenn ich das hier rufe:
    http://<meineIP>:8080/cgi-bin/hw.pl
    sollte mein Browser also 'Hello world!' anzeigen !

    TATSÄCHLICH geschieht folgendes:
    Ich bekomme vom Browser ein Sicherheitswarnung-Popup ob ich das file hw.pl wirklich von der Site <meineIP> downloaden will. Sage ich 'ja ausführen', dann läuft in einem cmd-Fenster das perl Skipt ab und verschwindet wieder...

    Ich habe erstmal versucht die Sicherheitseinstellungen meines Browsers zu ändern, aber das hat keinen Erfolg und ist ja auch nicht das Problem, weil: ich habe ja gesagt das cgi solle AUSGEFÜHRT werden am Server und der OUTPUT solle zu mir in den Browser kommen. Das geschieht aber nicht. Es kommt der Source-code des .pl files bei mir an. Es sieht aus, als ob ich cgi Execution im Apache gar nicht aktiviert hätte ...

    Was ist hier das Problem ?

    Für Hilfestellung wäre ich dankbar. :?
    Peter

    Einmal editiert, zuletzt von petersausk (19. November 2010 um 21:27)

  • Hat sicherledigt, es scheint am, Skript zu liegen:

    #!c:/perl/bin/perl.exe
    use strict;
    print "Content-type: text/html\n\n";
    print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">', "\n";
    print "<html><head><title>Test-Ausgabe</title></head><body>\n";
    print "<h1>Hurra, es klappt!</h1>\n";
    print "</body></html>\n";

    funktioniert ...

    Peter