Uppsala universitet

     

Server Side Includes

Hotellservern stöder så kallade Server Side Includes, vilket är en teknik för att göra dynamiska webbsidor.

Kommandon läggs in i HTML-koden, och innan sidan skickas till klienten analyseras den (parsas) och kommandona ersätts med HTML-kod.

Beroende på vilka kommandon som ges kan samma sida alltså se olika ut vid olika tidpunkter eller hos olika läsare, detta utan att koden behöver förändras.

Anvisningar:

Filer sparas med suffixet .shtml.

Kommandon läggs in i koden enligt följande:

<!--#kommando arg="värde" -->

(Notera att inget mellanslag får finnas mellan <!-- och #kommando.)

Kommandon:

Olika kommandon tar olika argument. Följande kommandon kan användas:
  • config

    Har tre giltiga argument:

    • errmsg
      Styr vilket felmeddelande som ges till klienten om det skulle bli fel vid parsningen.
    • timefmt
      Styr i vilket format tid skall visas. Syntax: config timefmt="...". Koder för olika element återfinnes här.
    • sizefmt
      Styr i vilket format filstorlek visas. Sättes till bytes eller abbrev (det senare ger storleken i kb eller Mb).
  • include

    Inkluderar texten i angivet dokument på den parsade sidan. Två argument:

    • virtual
      Anger måldokument på servern med hjälp av en sökväg: exempelvis virtual="/konstvet/index.htm".
    • file
      Anger måldokumentet med sökväg relativt den aktuella katalogen. Absoluta sökvägar och ../ kan inte användas, varför endast dokument i samma katalog eller underkataloger åtkommes. Givet chroot bör detta inte vara något problem.
    Detta kommando är användbart exempelvis för att inkludera sidhuvuden och -fötter i webbsidor. Om dessa sidelement skrives som egna filer och med hjälp av SSI inkluderas i relevanta webbsidor kan samtliga sidor mycket enkelt uppdateras vid adressändringar, utbyte av webansvarig och andra förändringar.
  • echo

Skriver värdet på angiven variabel (se nedan). Endast ett argument:
echo var="värde"

  • fsize

Skriver ut storleken på angiven fil. Samma argument som include. Styrs av sizefmt i config.

  • flastmod

Skriver ut senaste modifikationsdatum för angiven fil. Samma argument som include. Styrs av timefmt i config.

(Kommandot exec, som exekverar ett shellkommando eller ett CGI-script, är av säkerhetsskäl inte aktiverat.)

Variabler:

En mängd olika variabler kan användas: dels några SSI-specifika, dels CGI-variabler, och därtill den information som klienten skickar i headern. För utförliga listningar av detta, se NCSA:s SSI- och CGI-tutorials.

Några variabler som kan vara av intresse:

  • DOCUMENT_NAME
    Aktuell sidas filnamn.
  • DATE_LOCAL
    Dagens datum.
  • LAST_MODIFIED
    Det datum då aktuell sida senast modifierades.
  • REMOTE_HOST
    Namnet på den klientens dator.
  • REMOTE_ADDR
    Klientens IP-nummer.
  • HTTP_USER_AGENT
    Klientens webläsare och dator.

Exempel på sida:

Klicka här för att se sidan, och här för att se källkoden. (I Microsoft Internet Explorer måste man välja Visa -> Källa eller motsvarande.)

 



 
Copyright © 2007 UPPSALA UNIVERSITET, Box 256, 751 05 Uppsala | Webmaster
Uppdaterad: 2007-06-01