Berthold Müller: CGI und Perl

Hallo,

ich arbeite mit einer NT4.0-Workstation mit Peer Web Server und versuche das Beispiel PERL-Script comments.pl auf meinem Rechner zum Laufen zu bringen. OHNE ERFOLG !

Das Verzeichnis c:\perl habe ich als /perl -alias definiert. Als Nachricht erhalte ich Fehler 501.

Wer hat einen Tip ?

Gruß B.Müller

  1. Hallo Berthold,

    Das Verzeichnis c:\perl habe ich als /perl -alias definiert. Als Nachricht erhalte ich Fehler 501.

    Der Perl-Interpreter unter Windows legt seine EXE doch darunter nochmal in einem Unterverzeichnis bin ab, wenn ich nicht irre. Der Pfad zur perl.exe waere dann also
    #!/perl/bin/perl.exe
    So sollte es im Script in der ersten Zeile stehen.

    Viele Gruesse
      Stefan Muenz

    1. Hallo Berthold,

      Das Verzeichnis c:\perl habe ich als /perl -alias definiert. Als Nachricht erhalte ich Fehler 501.

      Der Perl-Interpreter unter Windows legt seine EXE doch darunter nochmal in einem Unterverzeichnis bin ab, wenn ich nicht irre. Der Pfad zur perl.exe waere dann also
      #!/perl/bin/perl.exe
      So sollte es im Script in der ersten Zeile stehen.

      Viele Gruesse
        Stefan Muenz

      Hi Berthold hi Stefan,

      sorry, aber das hat damit ueberhaupt nichts zu tun.

      Error 501 meinthier zwar, dass Perl nicht richtig installiert ist, das ist schon
      richtig, aber die Angabe

      #!/perl/bin/perl.exe

      interessiert Windows ueberhaupt nicht. Das ist allerdings bei Unix-Systemen wiederum
      richtig.

      Das problem ist leider ganz anderer Natur. Die meisten Perl-Installationen legen in
      der Registry einen falschen Eintrag an, und man muss das muehsam bei einfachen
      WebServern mit den fingern umfriemeln.

      Der Registry-Eintrag muss bei

      HKEY_LOCAL_MACHINE
      \SYSTEM
      \CurrentControlSet
      \Services
      \W3SVC
      \Parameters
      \Script Map

      folgenden Eintrag haben

      .pl c:\perl\bin\perl.exe %s %s

      und, weils so schoen ist, machst du

      .cgi c:\perl\bin\perl.exe %s %s

      gleich mit. Beim OmniHTTPd fuer Win95 ist das natuerlich einfacher zu handeln.

      Da es ein Eintrag in der Registry ist, muss die Kiste neu gestartet werden.

      in das Verzeichnis /cgi-bin/

      legt man sich ein test.pl hin, etwa

      print "Content-type: text/html\n\n";
      print "Holla, das funzt endlich!\n";

      und wenn das mit

      http://127.0.0.1/cgi-bin/test.pl

      im Browser laeuft, laeuft auch Perl/CGI.

      Das mit /perl wuerde ich mal schleunigst rausnehmen. Denn wenn ich dire
      was Boeses will, koennte ich dich abfangen, wenn Du online bist, und deinn Perl
      ein paar Commandos senden, damit ich mit deinem Rechner machen kann, was
      ich will.

      Gruesse

      Stefan R. Mueller