Jörk Behrends: Mit PERL ein HTM-Dokument zum Browser schicken + Forumsauslese

Beitrag lesen

Hallo!

1.) Direktausgabe einer lokalen Datei
Location-Anzeige des Browsers wird nicht geändert (weist also auf das Script), sehr schnelle Methode (nur ein Request), beliebige Datei kann übermittelt werden, also auch von außerhalb der WWW-Area (Stichwort "Secret Area").

2.) Direktausgabe einer per http verfügbaren Datei
Location-Anzeige des Browsers wird nicht geändert, langsame Methode, zweiter Request (innerhalb des Scripts, also nicht clientseitig), nur über http (und andere Xtp) verfügbare Dateien können übermittelt werden, Hacks fremder Dateien möglich.

3./4.) Verweis per Location
Location-Anzeige des Browsers ändert sich, zweiter clientseitiger Request, nur über Xtp verfügbare Dateien können übermittelt werden, keine Fehlerabfrage möglich (z.B. Error 404), kein Hack möglich, sehr schnell programmiert, keine zusätzliche Serverbelastung. Die Methode mit CGI.pm ist unbedingt vorzuziehen (z.B. wegen korrekter Ausgabe des Status).

Bei allen Methoden sollte/muß man auch noch abwägen, was denn mit Folgelinks passieren soll. Wenn ich z.B. mit Methode 2 eine Webseite aus dem Netz hole und dort relative und absolute Links auf Folgeseiten bzw. Bilder enthalten sind. Meist möchte man dann auch, daß der Nutzer des Skriptes diese Bilder auch sehen kann ...

Hier sind wiederum zwei Methoden zu unterscheiden:
1.) Das Skript liefert lediglich eine Seite; die Folgezugriffe soll der Browser direkt an die gewünschten Resourcen stellen. Dies ist bei absoluten Links gar kein Problem. Für releative
Links sollte man sein Skript so erweitern, daß ein bestehendes BASE-Tag angepaßt bzw. eines eingefügt wird.

2.) Das Skript liefert eine Seite UND die Folgeseiten. In diesem Falle muß das Skript mit
Path_Info umgehen können:
Ich bekomme z.B. meine Einstiegsseite per www.washammadennheu.de/cgi-bin/skript/index.html
Das Skript bekommt aus der Umgebungsvariablen PATH_INFO die Information '/index.html' - kann nun z.B. aus einer secrect-area oder von einem anderen Server die index.html besorgen und ausgeben. Ein dort enthaltener link auf 'bilder/atlantis.gif' wird dann zum Aufruf
www.washammadennheu.de/cgi-bin/skript/bilder/atlantis.gif
usw.

Bei beiden Methoden mach dummerweise die absoluten Links Probleme, wenn sie z.B. auf
die "alte" Herkunft zeigen. Ich besorge mir z.B. die oben genannte index.html von www.misterx.gov,
das Bild ist per '/bilder/atlantis.gif' oder gar 'http://www.misterx.gov/bilder/atlantis.gif' eingebunden. Dann erhalte ich anstelle von www.washammadennheu.de/cgi-bin/skript/bilder/atlantis.gif
www.washammadennheu.de/bilder/atlantis.gif oder http://www.misterx.gov/bilder/atlantis.gif
Beides unter Umständen nicht so gewollt. Also heißt es hier Links innerhalb von HTML-Seiten
suchen und anpassen ...

Jörk