Globale linker

HTML

SSI (server side includes)

SSI er en veldig hendig komponent som kommer fra CGI. Server-side includes er instruksjoner til serveren om å inkludere en spesifikk fil i et dokument før dokumentet blir sendt til brukeren. Ved å bruke SSI kan du dynamisk legge ved innhold i en web-side eller i flere sider på en site. Det fineste ved det hele er at du ikke trenger å kunne noen form for programmering for å kunne bruke det.

SSI er som sagt en del av CGI som, sammen med serveren, lar oss dynamisk legge inn informasjon (som dato, eller et bilde eller et tekstdokument eller en html-side) i enhver html-side, og la browseren vise fram innholdet som om det var en del av web-siden. La oss si at du ville vise dagens dato på toppen av siden din. Det eneste du trenger å gjøre er å skrive følgende kode inn i html-dokumentet:

<!--#echo var="DATE_LOCAL" -->

(NB! Pass på at du har et mellomrom mellom "DATE_LOCAL" og -->. Noen servere får problemer hvis de står helt inntil hverandre)

Det kjipe alternativet ville vært å gå inn i hvert eneste html-dokument på siten og forandret datoen manuelt hver eneste dag. Så hverdagen kan bli enklere med SSI.

Serveren der hvor siten din ligger må støtte SSI parsing. Hvordan du kan finne ut serveren din støtter det? Ganske enkelt det også.

Kjør en SSI-test.

  1. Lag en webside, og skriv inn koden
    <!--#echo var="DATE_LOCAL" -->
    et eller annet sted mellom <body>-taggene.
  2. Lagre som test.shtml
  3. Laste siden opp til serveren
  4. Start browseren og pek til filen du nettopp har lastet opp. Hvis dagens dato er skrevet inn på siden, støtter serveren din SSI.

Hvis den ikke viser dagens dato, støtter nok ikke serveren SSI. Det går jo an å spørre systemansvarlig.

Lagre som.shtml

For at sidene dine skal kunne nyttiggjøre seg SSI, må alle filene du vil bruke SSI i bytte fil-extension fra .htm eller .html til .shtml. Så index.htm må bli index.shtml. For de fleste servere er dette den eneste måten en server kan vite hva en SSI-kommando er.

Vise dagens dato og tid

Denne har vi allerede sett på :

<!--#echo var="DATE_LOCAL" -->

vil vise f.eks: lørdag, 16-mar-2002 20:39:43 CET

Vise sist oppdatert

<!--#flastmod file="test.shtml" -->

hvor «test.shtml» er navnet på filen. Dette vil vise en dato som over når siden sist ble lagret.

Et dokument inne i et annet

Dette må være en av de mest nyttige funksjonene i SSI — muligheten til å legge inn et annet dokument i dokumentet. Koden for dette er:

<!--#include file="myfile.htm" --> eller
<!--#include virtual="directory/myfile.htm" -->

Skriv dette hvor du vil mellom <body>-taggene og «myfile.htm» vil vises der hvor du har bedt om det i koden. Husk at referansen til «myfile.htm» må inneholde den riktige relative banen.

Filen du henviser til trenger ikke være en «.htm-fil». Det kan også være en .txt-fil eller .inc-fil. Og i denne tekstfilen kan du ha html-koder hvis du trenger det.
Hvis include-filen inneholder CGI-kode må include-filen også ha .shtml som filetternavn.

Så hvordan kan dette være tidsbesparende for oss? La oss si at du har noe som repeteres i mange sider, f.eks. «Dagens tilbud». Istedet for kjipe metoden — å måtte gå inn i hver eneste side og manuelt oppdatere dagens tilbud, kan du ha en tekstfil eller html-fil hvor du forandrer innholdet hver dag. Du ender altså opp med å måtte gjøre forandringene i én fil, istedet for mange.

Mer om SSI finner du hos SSI-developer.net

Neste sideGå til neste side for å se på meta tagger.