Warum gibt mein "test.cgi"-Programm eine Fehlermeldung aus?: Unterschied zwischen den Versionen

Aus HSMWiki
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „Datei:ssh_win32_chmod.jpg Wer obiges Programm in sein "cgi-bin"-Verzeichnis kopiert, erhält meist folgende Fehlermeldung: <pre> INTERNAL SE…“)
Zeile 1: Zeile 1:
[[Datei:ssh_win32_chmod.jpg|miniatur|300px|]]
+
[[Datei:ssh_win32_chmod.jpg|miniatur|200px|]]
  
 
Wer obiges Programm in sein "cgi-bin"-Verzeichnis kopiert, erhält meist folgende Fehlermeldung:
 
Wer obiges Programm in sein "cgi-bin"-Verzeichnis kopiert, erhält meist folgende Fehlermeldung:

Version vom 23. Juni 2010, 10:24 Uhr

Ssh win32 chmod.jpg

Wer obiges Programm in sein "cgi-bin"-Verzeichnis kopiert, erhält meist folgende Fehlermeldung:

INTERNAL SERVER ERROR
The server encountered an internal error or misconfiguration and was unable to complete your request.

Ein einfaches Kopieren reicht nicht. Um ein "CGI"-Programm auszuführen (execute), muss es auch dieses Recht besitzen (711). Dieses Recht kann man zum Beispiel im "SFTP-Bereich" des SSH-Servers "ssh-www" setzen:

  • SSH-Verbindung zum Server "ssh-www" herstellen
  • Im Menü "Window" den Punkt "New File Transfer" anklicken
  • In das Verzeichnis "cgi-bin" wechseln
  • Mit der rechten Maustaste die Option "Properties" der Datei wählen
  • In der "Owner"-Reihe 3 Kreuze eintragen

Wer seine "CGI"-Scripte unter Windows erstellt, sollte den Unterschied bei der Zeilentrennung zu Unix ( "CR/LF" <=> "LF" ) beachten. Beim FTP-Upload muss deshalb der "ASCII"-Modus eingestellt werden. Alternativ kann man das "dos2unix" -Programm unter UNIX/Linux verwenden:

dos2unix -s script.cgi

Eine weitere Ursache für diese Fehlermeldung besteht durch fehlerhafte oder nicht vorhandene "include"-Daten in komplexeren "CGI"-Programmen.