Server Side Includes

Server Side Includes

Server Side Includes (dt.: Serverseitige Einbindungen), auch bekannt als SSI, sind in (meist HTML-)Dokumente eingebettete, einfach zu nutzende Scriptbefehle, die auf dem Webserver ausgeführt werden, bevor das Dokument an den Client ausgeliefert wird. Sie stellen eine einfach zu verwendende Alternative zu Programmen/Scripten dar, die das ganze Dokument dynamisch generieren. Die Sprache ist Turing-vollständig[1].

Inhaltsverzeichnis

Entstehung

Ursprünglich wurden SSI als Apache-Modul mod_ssi eingeführt. Heutzutage unterstützen auch andere Webserver die Scriptsprache, unter anderem der IIS von Microsoft.

Verwendung

Mit SSI kann der statische Inhalt einer Datei oder die dynamische Ausgabe eines Programms/Skriptes in ein Dokument eingefügt werden. Die zur Verfügung stehenden Befehle sind bewusst spartanisch gehalten: Fallunterscheidungen, Variablen speichern und ausgeben, CGI-Programme ausführen oder andere Dateien einbinden.

Syntax

Server Side Includes haben die folgende Syntax:

<!--#befehl parametername1="wert" parametername2="wert" -->

Das einleitende <!-- und das abschließende --> entsprechen den Zeichen für Beginn und Ende eines HTML- oder XML-Kommentares und sorgen dafür, dass der Browser die Befehle nicht anzeigt, falls SSI deaktiviert ist.

Wichtige Befehle

Befehl Parameter Beschreibung Beispiel
include file oder virtual Sorgt dafür, dass der Inhalt der Datei eingefügt wird. file adressiert diese Datei relativ zum aktuellen Verzeichnis, virtual relativ zum Root-Dokument-Verzeichnis. <!--#include file="header.shtml" -->

<!--#include virtual="script.pl" -->

set var, value oder errmsg Schreibt Inhalt von value in die Variable var. Errmsg definiert die Standard-Fehlermeldung, die bei den nächsten Fehlern ausgegeben werden soll. Kann z. B. vor ein SSI-Include gesetzt werden und wird dann angezeigt, wenn die Datei nicht geladen werden kann. <!--#set var="test" value="Hallo Welt!" --> oder <!--#set errmsg="Es ist ein Fehler aufgetreten!" -->
echo var Gibt Variable var wieder. Es kann sich dabei um selbstdefinierte Variablen handeln oder um CGI-Umgebungsvariablen wie z. B. ${REMOTE_ADDR}. <!--#echo var="test" -->
if expr Prüft den Ausdruck expr, gültig sind dabei = gleich, != ungleich, < kleiner, > größer. Es können mehrere Kriterien aneinander gereiht werden, indem man sie mit || für ODER oder && für UND voneinander trennt.

Eine praktischer Einsatzzweck ist beispielsweise die Internationalisierung einer Webseite:

<!--#if expr="${a} = ${b} || ${b} > 2 && ${a} != 0" --> HTML <!--#endif -->

<!--#if expr="$QUERY_STRING=/lang=FR/"-->
FR Inhalt
<!--#elif expr="$QUERY_STRING=/lang=EN/"-->
EN Inhalt
<!--#else--> DE Inhalt <!--#endif -->

X-Bit-Hack

Der Webserver erkennt HTML-Seiten mit Server Side Includes meist an der Dateiendung .shtml oder .ssi. Somit müssen nicht sämtliche HTML-Seiten nach SSI-Befehlen durchsucht werden, was die Seitenauslieferung beschleunigt. Um allerdings vor dem Benutzer die Verwendung von SSI zu verbergen, besteht eine Alternative, die zuerst vom Apache-Webserver eingeführt wurde. Dabei werden HTML-Dateien, die SSI-Anweisungen enthalten, an einem speziellen Datei-Attribut erkannt. Es handelt sich dabei um den sogenannten „X-Bit-Hack“. Ist diese Funktion im Webserver aktiviert (z. B. durch die Direktive "XBitHack on" in der .htaccess-Datei), werden alle HTML-Seiten, bei denen das Ausführ-Bit (execute bit) gesetzt ist, vom SSI-Interpreter ausgewertet, ehe sie an den Client ausgeliefert werden. Da die Dateirechte vom Client aus nicht sichtbar sind, kann so die Verwendung von SSI vor dem Benutzer verborgen werden.

Siehe auch

Weblinks

Einzelnachweise

  1. http://www.janschejbal.de/projekte/ssituring/ Server Side Includes Turing machine, Jan Schejbal, zuletzt abgerufen am 12. August 2010.

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Server Side Includes — (SSI) is a simple interpreted server side scripting language used almost exclusively for the Web. The most frequent use of SSI is to include the contents of one or more files into a web page on a web server. For example, a web page containing a… …   Wikipedia

  • Server side includes — Les Server Side Includes, abrégés SSI, sont un langage de programmation fait pour être interprété par un serveur HTTP lorsqu il sert un document HTML. Ce langage tire son nom de sa principale utilisation : inclure plusieurs fichiers pour… …   Wikipédia en Français

  • Server Side Includes — (SSI) es un conjunto de directivas que se escriben en las páginas HTML y que se evalúan en el servidor web cuando se solicita la página HTML. SSI permite añadir contenido generado de forma dinámica a las páginas web, sin tener que programar toda… …   Wikipedia Español

  • Server Side Includes — Les Server Side Includes, abrégés SSI, sont un langage de programmation fait pour être interprété par un serveur HTTP lorsqu il sert un document HTML. Ce langage tire son nom de sa principale utilisation : inclure plusieurs fichiers pour… …   Wikipédia en Français

  • Server Side Includes — SSI (Server Side Includes включения на стороне сервера) несложный язык для динамической «сборки» веб страниц на сервере из отдельных составных частей и выдачи клиенту полученного веб сервере Apache при помощи модуля mod include. Включённая в… …   Википедия

  • Server Side Includes (программирование) — SSI (Server Side Includes включения на стороне сервера) несложный язык для динамической «сборки» веб страниц на сервере из отдельных составных частей и выдачи клиенту полученного веб сервере Apache при помощи модуля mod include. Включённая в… …   Википедия

  • Server Side Includes — Abk. SSI . Webserver Erweiterung, die es erlaubt, Webseiten dynamisch zu generieren bzw. zu modifizieren. Vor Auslieferung einer Webseite an einen Browser Client werden darin enthaltene Befehle ausgeführt. So können z.B. der Inhalt einer externen …   SEO Wörterbuch

  • Server-side — refers to operations that are performed by the server in a client server relationship in computer networking.Typically, a server is a software program, such as a web server, that runs on a remote server, reachable from a user s local computer or… …   Wikipedia

  • Server\ Side\ Include — Ermöglichen das Auslagern von gleichbleibenden Webseiteninhalten auf eigene Files. Mit Server Side Includes (SSI) können Variablen definiert werden, die beim Aufruf vom Server dynamisch mit aktuellen Inhalten beliefert werden, beispielsweise die… …   Online-Wörterbuch Deutsch-Lexikon

  • Server Side Include (программирование) — SSI (Server Side Includes включения на стороне сервера) несложный язык для динамической «сборки» веб страниц на сервере из отдельных составных частей и выдачи клиенту полученного веб сервере Apache при помощи модуля mod include. Включённая в… …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”