─rger mit Perl-Dateien vermeiden

Als Internet- und Intranet-Server verwende ich eine Linux-Maschine. Darauf laufen hauptsΣchlich Perl-Programme. Und damit gibt es Probleme:Sowohl bei eigenen Listings als auch bei Programmen, die ich aus dem World Wide Web habe, erscheint beim Start oft die Fehlermeldung ╗Premature end of Script Header½. Was mache ich denn nur falsch?

Ihre Frage steht exemplarisch fⁿr einen ganzen Berg von Fragen, die wir zu dieser Fehlermeldung in letzter Zeit bekommen haben. Offensichtlich verzweifeln viele Perl-Programmierer daran. TatsΣchlich gibt es allerdings mehrere L÷sungen fⁿr das Problem. Daher hat CHIPIhnen die hΣufigsten Fehlerquellen hier einmal zusammengetragen: Fehler 1:Jedes Perl-Programm beginnt mit einen Verweis auf den Interpreter und dessen Verzeichnis. Findet das Programm den Interpreter nicht, erscheint die Fehlermeldung. Hier kommt es oft vor, dass der Pfad falsch angegeben wird. Denn meist steht hier #!/usr/bin/perl In den meisten FΣllen muss die Zeile korrekt jedoch so lauten: #!/usr/local/bin/perl Auf diese Weise findet das Skript dann auch das Perl-Verzeichnis samt dem Interpreter. Taucht der Fehler weiterhin auf, eliminieren Sie eine weitere Fehlerquelle. Fehler 2:Haben Sie das Perl-Programm per FTPauf Ihren Server geladen, lΣuft es nicht, wenn Sie es im BinΣr-Modus geladen haben. Vergewissern Sie sich in Ihrem FTP-Client also, dass die Option ╗ASCII½ aktiviert ist. Danach laden Sie das Programm erneut auf Ihren Server. Sollte auch das nicht weiterhelfen, gibt es eine dritte Problem-M÷glichkeit, die Sie ⁿberprⁿfen sollten. Fehler 3:Wenn Sie das Programm aus dem Internet geladen haben, liegt es Ihnen vermutlich in gezippter Form vor. Hier ist entscheidend, wie Sie es entpacken. Denn hΣufig wird die Datei nicht korrekt als Textdatei erkannt, und Sie mⁿssen den Textmodus deshalb er-zwingen. Geben Sie zum Entpacken folgende Zeile ein: unzip -aa datei.zip Anstelle von ╗datei.zip½ setzen Sie den entsprechenden Namen des aus dem Web geladenen Files ein.