Server Side Includes in HTML |
|
Allgemeines zu Server Side Includes |
|
Mit Hilfe von Server Side Includes (auch unter der Abkürzung SSI bekannt) können Sie direkt innerhalb von HTML-Dateien dynamische Information, z.B. Datum und Uhrzeit, einbinden. Sie können auch CGI-Programme starten und deren Ausgaben, beispielsweise einen Zählerstand mit Anzahl Zugriffen auf die aktuelle Datei, in die HTML-Datei einbinden. Oder Sie geben den aktuellen Inhalt diverser CGI-Umgebungsvariablen direkt in HTML aus - ohne Umweg über ein separates CGI-Script.
Server Side Includes werden nur ausgeführt, wenn der WWW-Browser die HTML-Datei über einen installierten WWW-Server aufruft, also mit einer URL-Adresse vom Typ http://.... Voraussetzung ist ferner, daß der installierte WWW-Server die Server Side Includes unterstützt. Nicht alle WWW-Server tun das, andere interpretieren nur einen Teil der möglichen Angaben. Wenn der Server keine Server Side Includes kennt, funktionieren die entsprechenden Anweisungen in der HTML-Datei nicht. Beim Austesten mit einem lokal installierten WWW-Server lesen Sie hierzu bitte in der Dokumentation des Servers nach. Beim Einsatz auf einem öffentlichen WWW-Server fragen Sie Ihren Provider, ob dessen WWW-Server die Server Side Includes unterstützt.
Damit ein WWW-Server sofort erkennt, daß eine HTML-Datei Server Side Include Anweisungen enthält, ist es wichtig, solche HTML-Dateien mit einer speziellen Dateinamenendung zu kennzeichnen. Üblich sind die Dateiendungen .shtml, .shtm oder .sht. Die meisten Server ignorieren Server Side Include Anweisungen, wenn diese in einer gewöhnlichen HTML-Datei mit der Endung .htm oder .html stehen!
<html> <head> <title>Dynamisches HTML mit Server Side Includes</title> </head> <body> <h1>Dynamisches HTML mit Server Side Includes</h1> Datum/Uhrzeit auf dem Server-Rechner: <!--#echo var="DATE_LOCAL"--><br> Name dieser HTML-Datei: <!--#echo var="DOCUMENT_NAME"--><br> Installierte Server-Software: <!--#echo var="SERVER_SOFTWARE"--><br> Ihr WWW-Browser: <!--#echo var="HTTP_USER_AGENT"--> <h3>Weitere Informationen:</h3> <!--#exec cgi="/cgi-bin/plapper.pl"--> </body> </html> |
Server Side Includes müssen Sie in einer HTML-Datei innerhalb eines Kommentars notieren. Es gibt verschiedene Server Side Include Anweisungen, beginnend mit einem Gatterzeichen #. Im obigen Beispiel kommen die Anweisungen #echo und #exec vor. Hinter der Anweisung folgt in der Regel eine Angabe der Art Typ="Wert". Im Zusammenhang mit der Anweisung #echo ist beispielsweise die Angabe var="Variablenname" erlaubt, wobei "Variablenname" ein bestimmter, erlaubter Name sein muß. Es kann sich um Namen von CGI-Umgebungsvariablen handeln oder um spezielle Server Side Include Variablennamen (siehe Liste weiter unten). Bei der Anweisung #exec, die ein Programm auf dem Server-Rechner ausführt, müssen Sie den Typ des Programms (im obigen Beispiel: cgi) und als Wert die Adresse des ausführbaren Programms (im obigen Beispiel: "/cgi-bin/plapper.pl"), angeben.
Die Liste ist nach Anweisungen alphabetisch sortiert.
Anweisung | Parameter/Wert | Beispiele |
---|---|---|
#config | errmsg="[Fehlermeldung]" sizefmt="[Wert]" timefmt="[Wert]" errmsg ist sinnvoll, um bei nicht anzeigbaren Server Side Includes eine verständliche Fehlermeldung auszugeben. sizefmt bestimmt das Format für Dateigrößenangaben, z.B. sinnvoll vor dem Gebrauch von #fsize. Erlaubte Werte: timefmt bestimmt das Ausgabeformat für Datum/Uhrzeit, z.B. sinnvoll vor dem Gebrauch von #echo var="LOCAL_TIME". |
<!--#config errmsg="SSI nicht anzeigbar!"--> <!--#config sizefmt="bytes"--> <!--#config timefmt="%d.%m.%Y, %H.%M"--> |
#echo | var="[Variablenname]" Bei [Variablenname] sind CGI-Umgebungsvariablen erlaubt oder die folgenden, speziellen Variablennamen:
|
<!--#echo var="SERVER_NAME"--> <!--#echo var="DATE_LOCAL"--> |
#exec | cmd="[Pfad/Programmdatei]" cgi="[CGI-Pfad/CGI-Programm/Script]"
Benutzen Sie cmd, um ein beliebiges Programm auf dem Server-Rechner zu starten. Es sollte sich um Programme handeln, die Daten auf die Standardausgabe schreiben. Diese Datenausgaben werden dann direkt in die HTML-Datei geschrieben. |
<!--#exec cmd="/prog/search.exe *.htm"--> <!--#exec cgi="/cgi-bin/counter.pl"--> |
#fsize | file="[Pfad/Datei]"
Gibt die Größe der angegebenen Datei aus. |
<!--#fsize file="/download/selfhtml.zip"--> |
#flastmod | file="[Pfad/Datei]"
Gibt den Zeitstempel der angegebenen Datei aus. |
<!--#flastmod file="/index.htm"--> |
#include | file = "[Pfad/Datei]" virtual = "[Pfad/Datei]" Gibt den Inhalt der angegebenen Datei aus. Verwenden Sie file für absolute Pfadangaben auf dem Server-Rechner und virtual für relative Pfadangaben bezogen auf das Wurzelverzeichnis für Dokumente des WWW-Servers. |
<!--#include virtual="/news/news.htm"--> |
weiter: | HTML-Formulare und CGI |
zurück: | CGI-Umgebungsvariablen |