Der CGI-Server, den ihr für euere Übungen verwenden sollt ist irastud1.informatik.uni-freiburg.de, euer Accountname ist (für alle!) iragast.
Login auf den Linux-Kisten per
ssh -X
iragast@irastud1.informatik.uni-freiburg.de
Das Passwort sage ich euch im Kurs.
Wechselt dann mit
cd cgi-bin
in das CGI-Verzeichnis, dort habe ich euch mehrere Verzeichnisse angelegt.
MIt
ls -la
könnt ihr euch den Inhalt der Verzeichnisse anschauen, mit
cd demo
in das Demo-Verzeichnis wechseln.
less demo.pl
oder
less echo.pl
zeigt die Dateien an, wenn ihr sehen wollt, was die Dateien tun:
[
irastud1.informatik.uni-freiburg.de]
oder
[
irastud1.informatik.uni-freiburg.de]
Wenn ihr nicht direkt auf irastud1 editieren wollt (ich habe einige Editoren eingerichtet), könnt ihr auch Dateien per SSH bzw SCP kopieren:
scp skript.cgi
iragast@irastud1.informatik.uni-freiburg.de:cgi-bin/Annika
scp
iragast@irastud1.informatik.uni-freiburg.de:cgi-bin/Annika/skript.cgi .
oder ihr nehmt einen grafischen Client wie WinSCP (Rechenzentrum), dort kann man die Rechte mit Rechtsklick->Eigenschaften setzen; jeweils unter R, W und X ALLES ankreuzen (AM BESTEN FÜR JEDE DATEI UND JEDES VERZEICHNIS!)
Wenn eine Datei nicht funktioniert "Internal Server Error", obwohl ihr sie mit "perl skript.cgi" starten könnt prüft drei Dinge:
1. Ist die Datei ausführbar?
Ansonsten: chmod 777 skript.cgi (AM BESTEN FÜR JEDE DATEI UND JEDES VERZEICHNIS!)
2. Steht #!/usr/bin/perl in der ersten Zeile der Datei?
3. Steht "print "Content-type: text/html\n\n";" in der Datei?
Zum Testen unterstützt CGI.pm übrigens die praktische Parameterschreibweise:
./echo.cgi Parameter1=Wert1 Apfel=gruen Tobias=doof
Und wenn wirklich was schiefgeht, loggt euch mit einer zweiten Konsole ein und macht
tail -f /var/log/apache2/error.log
dann könnt ihr live die Fehlermeldeungen des Webservers beim Aufruf euerer Skripte verfolgen.
Grüße
Tobias Nopper
Lehrstuhl für Betriebssysteme
2 mal bearbeitet. Zuletzt am 06.07.2010 19:13 von Tobias Nopper.