Jasmin: 500 Internal Server Error

Hallo liebe Forumsgemeinde,

nachdem ich mich auch mal mit Perl beschäftigen wollte, bin ich gleich auf das erste Anfängerproblem gestossen. Beim Ausführen eines Perl-Skriptes zeigt der Browser den Fehler 500.

Mein erster Verdacht lag auf dem Shebang. Deshalb habe folgendes PHP-Skript ausgeführt:

  
<?php  
system("whereis perl");  
?>  

Ergab /usr/bin/perl, jedoch ist mir noch etwas aufgefallen: Das PHP-Skript lies sich nicht im cgi-bin Verzeichniss ausführen. Im Internet bin ich dann auf folgende Lösungen gestoßen:

  • FTP Transfer Modus auf ASCII setzen
  • Ausführen der Datei erlauben (CHMOD)

Beides hat nichts gebracht.

Grüße
Jasmin

  1. Hallo,

    500 Internal Server Error

    Das kann so ziemlich alles bedeuten und ohne das Script zu sehen und die genaue Fehlermeldung im Errorlog zu kennen, ist das Ganze jetzt nur ein Herumraten, also gib uns bitte etwas mehr Information.

    Markus

    --
    http://www.apostrophitis.at
    六 7東曲 人港ラ
    1. Hallo liebe *Markus,

      die genaue Fehlermeldung im Errorlog

      Wie komme ich an den Errorlog?

      Grüße
      Jasmin

      1. Hi,

        Wie komme ich an den Errorlog?

        Es befindet sich in einem Verzeichnis deines Webservers. Wo dieses Verzeichnis ist, ist von Provider zu Provider unterschiedlich. Bei halbwegs guten Providern hast du ohnehin eine Art Webinterface worin sich auch ein Link zum Inhalt deines Errorlogs befinden müsste.
        Kommst du nicht an das Errorlog, zeige uns einfach das Script.

        Markus

        --
        http://www.apostrophitis.at
        六 7東曲 人港ラ
        1. Hallo Markus,

          Im Errorlog steht:
          Premature end of script headers

          Grüße
          Jasmin

          1. Hi,

            Im Errorlog steht:
            Premature end of script headers

            Das ist ja schon mal ein Anfang. Hast du etwa keinen Content-Type ausgegeben? Wenn du Daten über einen Webserver ausgibst, musst du das tun, also zB bei HTML: print "Content-type:text/html\n\n"; vor der ersten Datenausgabe.

            Markus

            --
            http://www.apostrophitis.at
            六 7東曲 人港ラ
            1. Hallo Markus,

              Super jetzt hat es funktioniert. Es lag an der ungewollten Ausgabe von "", noch vor dem Header. Dies kam daher das ich die Datei in UTF-8 gespeichert habe (Notepad++). Wie kann ich die Ausgabe von  verhindern?

              Grüße
              Jasmin

              1. Super jetzt hat es funktioniert. Es lag an der ungewollten Ausgabe von "", noch vor dem Header. Dies kam daher das ich die Datei in UTF-8 gespeichert habe (Notepad++). Wie kann ich die Ausgabe von  verhindern?

                indem du die Datei nicht im utf-8 Format abspeicherst.

                Struppi.

                --
                Javascript ist toll (Perl auch!)
              2. Hallo

                Super jetzt hat es funktioniert. Es lag an der ungewollten Ausgabe von "", noch vor dem Header. Dies kam daher das ich die Datei in UTF-8 gespeichert habe (Notepad++). Wie kann ich die Ausgabe von  verhindern?

                In Notepad++ sollte dies über das Menü Format möglich sein. Aktiviere

                Kodiere als ANSI
                    Anzeige als UTF-8

                Dieses nervige Verhalten für vernünftige UTF-8-Dateien ohne BOM und seths fleißige Werbung haben mich inzwischen zum Wechsel auf Vim bewegt.

                Freundliche Grüße

                Vinzenz

  2. Hallo Jasmin,

    der Fehler 500 kommt bei jedem Syntaxerror in Perl.
    Deshalb sollte man ein Script vorher am Prompt auf richtige Syntax testen.
    Dafuer gibt es bei den Komandozeilen-Optionen extra einen Schalter:
    perl -c schript.pl

    Gruss Norbert

    1. Hallo Norbert,

      der Fehler 500 kommt bei jedem Syntaxerror in Perl.
      Deshalb sollte man ein Script vorher am Prompt auf richtige Syntax testen.
      Dafuer gibt es bei den Komandozeilen-Optionen extra einen Schalter:
      perl -c schript.pl

      Ok, wie oben bereits geschrieben, kommt aber im Verzeichnis cgi-bin auch bei php und htm Datein der Fehler 500.

      Grüße
      Jasmin