Mit SSI kann der Webserver gewisse Sachen in die Datei einfügen im Moment, wo die Datei abgerufen wird.
SSI-Dateien sind im Grunde genommen ganz normale HTML-Dateien, die an beliebigen
Stellen ein oder mehrere SSI-Element(e) enthalten. Wie der Name schon sagt,
werden SSI auf dem Webserver interpretiert (falls dieser entsprechend eingerichtet
ist).
Der Browser des Users kriegt nur den Output (das Resultat des SSI) zu sehen,
und das ist im Normalfall ganz normales HTML (oder auch JavaScript, wenn man
Freude hat :-).
Allerdings sind die Möglichkeiten von SSI beschränkt, im Vergleich mit PHP sogar ziemlich mickrig.
Eine einzelne Seite kann nur entweder SSI- oder PHP-Befehle beinhalten.
Eine SSI-Datei ist eine ganz normale HTML-Datei mit allen nötigen Strukturen
(HEAD, TITLE, BODY etc.). An einer beliebigen Stelle innerhalb
der Datei können SSI-Befehle stehen.
Damit eine Datei vom Webserver als SSI-Datei erkannt wird, muss sie normalerweise die Endigung .shtml haben, also z.B. dateiname.shtml
Damit der Webserver auch .html-Dateien (z.B dateiname.html) auf SSI hin verarbeitet
("parst"), muss man einfach die folgende Zeile in die Datei .htaccess
schreiben:
AddType text/x-server-parsed-html .html
(Weitere Informationen dazu auf der Seite "Server-Konfiguration für PHP bzw. SSI")
Beispiele für SSI:
| Quelltext | gewünschter Output | Resultat |
<!--#ECHO VAR="DOCUMENT_NAME" --> |
Dateiname | ssi_allg.shtml |
<!--#ECHO VAR="LAST_MODIFIED" --> |
Datum/Zeit der letzten Änderung | Monday, 30-Dec-2002 12:01:16 CET |
<!--#include file="extern.inc" --> |
Inhalt einer externen Datei |
*Dies ist der Inhalt der Include-Datei [extern.inc] *
|
<!--#include file="externphp.php" --> |
Inhalt einer externen Datei |
*Dies ist der Inhalt der 1. Include-Datei [externphp.php] *PHP funktioniert! Verschachtelte includes: Einbinden einer zweiten externen Datei (extern2.html) durch einen PHP-Befehl in der ersten externen Datei (externphp.php): *Dies ist der Inhalt der zweiten Include-Datei [extern2.html]
*
Es funktioniert bestens!
|
<!--#include virtual="externphp.php" --> |
Inhalt einer externen Datei |
*Dies ist der Inhalt der 1. Include-Datei [externphp.php] *PHP funktioniert! Verschachtelte includes: Einbinden einer zweiten externen Datei (extern2.html) durch einen PHP-Befehl in der ersten externen Datei (externphp.php): *Dies ist der Inhalt der zweiten Include-Datei [extern2.html]
*
Es funktioniert bestens!
|
<!--#config timefmt="%d.%m.%y" --> |
Ab hier: Datum/Zeit im Format dd.mm.yy | |
<!--#ECHO VAR="DATE_GMT" --> |
Aktuelles Datum (Webserver) | 05.02.12 |
<!--#config timefmt="%a, %d.%m.%y, %H:%M:%S"--> |
Ab hier: Datum im Format Wochentag, dd.mm.yy, hh:mm:ss | |
<!--#ECHO VAR="DATE_GMT" --> |
Datum und Zeit (GMT) | Sun, 05.02.12, 08:01:23 |
<!--#ECHO VAR="LAST_MODIFIED" --> |
Datum/Zeit der letzten Änderung der Datei selbst | Mon, 30.12.02, 12:01:16 |
<!--#flastmod file="" --> |
Datum/Zeit der letzten Änderung der Datei selbst (?) | [an error occurred while processing this directive] |
<!--#flastmod virtual="" --> |
Datum/Zeit der letzten Änderung der Datei selbst (?) | Tue, 14.12.04, 15:17:36 |
<!--#flastmod file="index.html" --> |
Datum/Zeit der letzten Änderung der Datei "index.html" im gleichen Verzeichnis | Tue, 14.12.04, 15:17:36 |
Weiterführende Informationen, Links:
<= Zurück zur Übersicht PHP/SSI
Alle Angaben ohne Gewähr. Die Anwendung geschieht auf eigenes Risiko.
Autor: Thomas Lüthi, luthi@my-mail.ch - Letzte Änderung: 19.11.2001