![]() |
![]() |
|||
| Aufgaben Dokus Links | ||||
Server Side Includes (SSIs) sind Kommandos in XHTML-Dateien, die vom Server ausgeführt werden bevor ein Dokument zum Client geschickt wird. Dafür müssen die entsprechenden Dateien vom WWW-Server geparst (interpretiert) werden. Trifft er auf ein entsprechendes SSI-Kommando, so werden von ihm die angegebenen Funktionen ausgeführt.
SSI-Kommandos sind keine XHTML-Kommandos, sondern
Server-Spezifische Anweisungen, die von Server zu Server verschieden
sein können. Normalerweise werden SSI-Kommandos in
XHTML-Kommentaren (<!-- -->) eingebunden, damit klar ersichtlich
ist, daß es sich nicht um XHTML-Kommandos handelt.
<!--#Kommando Parameter="Wert"-->
Typische Bespiele für SSIs sind
<!--#include virtual="/cgi-bin/countme.cgi"-->
oder
<!--#include virtual="file.XHTML"-->
Eines der nützlichsten SSIs ist das #INCLUDE, womit man eine Datei innerhalb der XHTML-Datei einfügen kann.
Bitte erinnern Sie sich, dass sich dies auf dem Server abspielt, also bevor die Seite an den Client gesendet wird. Dies ist ein hervorragender Weg, um die Organisation von grossen Seiten zu verbessern und vereinfachen. Ein Beispiel kann z.B. ein Wetterdienst sein, wo das Grundgerüst immer gleich bleibt, nur die aktuellen Wetterdaten werden in das XHTML-File eingespeist.
Mögliche Parameter sind "virtual=" bzw. "file=" für die Angabe des einzufügenden Dokuments mit vollem virtuellen WWW-Pfad oder relativ zum aktuellen Dokument. Beim Parameter "file=" können weder absolute Pfade noch Dokumente aus übergeordneten Verzeichnissen (sprich kein "../") angegeben werden.
Ausserdem ist es möglich, an dieser Stelle ein CGI-Skript auszuführen. Der Server wartet dann auf das Ergebnis des CGI-Skripts, bevor er mit dem Parsing der Seite weitermacht. Das setzt allerdings voraus, dass alle Vorkehrungen für den Gebrauch von SSI und alle Vorkehrungen für den Gebrauch von CGI getroffen worden sind.
(Technische Bemerkung: Die Sicherheitsvorkehrungen für SSI sind auf andere Weise implementiert als diejenigen für das cgi-bin-Verzeichnis. Daher ist es nicht ungewöhnlich, dass einige Seiten CGI erlauben, SSIs aber nicht. Fragen Sie Ihren Webmaster, was Sie berechtigt sind zu gebrauchen und was nicht.)
Der Parameter "var=" kann dabei folgende Werte haben und liefert damit das Ergebnis:
Variable aktueller Wert DATE_GMT Thursday, 03-Apr-97 14:40:07 GMT DATE_LOCAL Thursday, 03-Apr-97 16:40:07 MET DST DOCUMENT_NAME index.XHTML DOCUMENT_URI /~ftpsoft/Docs/index.XHTML HTTP_ACCEPT image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */* HTTP_USER_AGENT Mozilla/3.01 (X11; I; Linux 2.0.10 i586) LAST_MODIFIED Tuesday, 11-Mar-97 20:53:36 MET REMOTE_ADDR 134.100.15.182 REMOTE_HOST vsyspc10.informatik.uni-hamburg.de SERVER_NAME www.informatik.hu-berlin.de SERVER_PORT 80 SERVER_SOFTWARE NCSA/1.3fsize und flastmod Die beiden Kommandos fügen die aktuelle Größe und die Zeit des letzten Zugriffs einer angegebenen Datei ein.
Die Parameter stimmen mit denen von include überein.
Weitere Informationen für die APACHE SSIs gibt es unter der Apache-Dokumentation.
Autor: Harald Weinreich, geändert von Hartmut Obendorf und Christian P. Kunze.
|
||||||