Til forsiden Til artikler og foredrag forside

Hva betyr et klikk?

Revidert utgave av artikkel i Lov & Data nr 62, juli 2000.

Med jevne mellomrom dukker det opp diskusjoner om rettslige sider ved det som gjerne kalles pekere for WWW, og som mer formelt har fått navnet lenker i hypertekst. Begreper som pekeransvar og dype lenker er innført av jurister, uten at disse alltid gir mening for informatikere. For å få en bedre forståelse av hva en lenke er for noe skal jeg gjøre et forsøk på å gi en enkel forklaring på følgende spørsmål: Hva betyr et «klikk» i praksis?

Vi kan tenke oss følgende situasjon: En person sitter med sin PC og bruker et program for å lese websider, en nettleser. Når hun peker på tekst eller grafikk som er merket som en hyperlenke og «klikker» på denne vil programmet sende en forespørsel over et nettverk, som regel Internettet, til en tjenermaskin. Denne maskinen sender så et svar på forespørselen. Hvis ikke svaret er en feilmelding vil det sannsynligvis føre til at brukerens nettleser kan vise fram en ny side fra verdensveven.

Adresser på verdensveven

En lenke på verdensveven identifiserer en fysisk eller abstrakt ressurs og kalles for en URI (Uniform Resource Identifier). Når brukeren klikker på lenken i dokumentet bruker nettleseren hyperlenkens URI som utgangspunkt for å sende en forespørsel til en tjenermaskin. I det som følger vil jeg kort beskrive hva som skjer i praksis.

Jeg tar utgangspunkt i følgende URI:

http://www.jus.uio.no/iri/index.html

Før den kan sende en forespørsel noe sted må nettleseren tolke denne URIen. Fordi den starter med "http" betyr det at det er en forespørsel som skal sendes med bruk av applikasjonsprotokollen HTTP (hypertext transfer protocol). Forespørselen skal sendes til tjenermaskinen "www.jus.uio.no"

Selve forespørselen

Forespørselen som nettleseren sender til tjenermaskinen består av flere veldefinerte felt med opplysninger. Noen av opplysningene er obligatoriske og andre er frivillige. Det som sendes vil derfor variere fra nettleser til nettleser og etter hvordan brukeren har satt opp den enkelte nettleser. Informasjonen som sendes er vanlig tekst, så det er lett å lese informasjonen som sendes. I tillegg til den informasjonen vil også tjenermaskinen se nettadressen til den som spør i form av et IP-nummer slik at den vet hvor svaret på forespørselen skal sendes.

Det er ikke meningen å forklare hver eneste opplysning som sendes i en forespørsel. Det som følger er et kort utvalg. Siden det er en forespørsel om å få overført en webside starter den på følgende måte:

GET /iri/index.html HTTP/1.1
Host: www.jus.uio.no

Den første linjen identifiserer hva man er på jakt etter, "/iri/index.html", og at man følger reglene til versjon 1.1 av protokollen HTTP. Den neste linjen identifiserer hvilken tjenermaskin man spør. Dette er den eneste informasjonen som nettleseren får fra vår URI, men langt fra den eneste informasjonen den sender fra seg. De fleste nettlesere vil sende fra seg informasjon om hvilket datamaskinprogram de er:

User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 98)

Dette er hva jeg får fra min Microsoft Internet Explorer, og jeg ser at det er versjon 5.01 og at operativ­systemet mitt er Windows 98. Formålet med å sende denne informasjonen er å gi tjenermaskinen mulighet til å sende informasjon som utnytter egenskaper bare noen nettlesere har, men nettleseren røper altså mer informasjon om brukeren enn strengt tatt nødvendig. I praksis blir denne informasjonen dessverre hovedsakelig brukt til å opplyse brukere om at de må oppgradere nettleseren sin eller skifte til en nettleser fra en annen leverandør. En pussig liten detalj er at Microsofts nettleser kaller seg for Mozilla. Dette er navnet Netscape bruker for sine nettlesere. Det finnes ingen garanti for at informasjonen i dette feltet stemmer med virkeligheten.

Det er ikke bare nettlesere som identifiserer seg med user-agent. Også søkemotorer bruker dette feltet. Dette kan tjener­maskinen utnytte til å sende et svar som er tilpasset søkemotorer i stedet for en webside med layout tilpasset en dataskjerm som skal leses av et menneske.

Accept-Language: no, da;q=0.8, sv;q=0.8, en;q=0.5, de;q=0.3

Nettleseren kan også sende informasjon om hvilket språk jeg foretrekker å motta informasjonen på. I mange nettlesere kan brukeren sette opp en slik liste over språk. Opplysningene over forteller tjener­maskinen at jeg fore­trekker å motta informasjon på norsk, og mitt andre­valg er dansk eller svensk uten at jeg foretrekker det ene framfor det andre. Deretter fore­trekker jeg engelsk framfor tysk. Dette forhindrer ikke at jeg får informasjon på fransk, men gir mulighet for at en tjenermaskin kan tilby informasjon på flere språk med en og samme URI. Ulempen er at brukeren røper sine språk­preferanser hver gang nettleseren spør om informasjon.

Referer: http://www.digme.no/noindex/eksempel.html

Mange nettlesere sender også med adressen til den siden hvorfra brukeren har klikket på hyperlenken. Denne informasjonen er strengt tatt ikke nødvendig, men gir eieren av et nettsted verdifull informasjon om hvordan det brukes. Enkelte nettlesere gir brukeren mulighet til å velge at denne typen informasjon ikke blir sendt ut, og enkelte bedrifter filtrerer bort denne slik informasjon i en brannvegg for å hindre at konfidensiell informasjon blir sendt ut av bedriftens intranett. Likevel, noen informasjons­leverandører bruker denne informasjonen til å unngå at andre benytter det som enkelte kaller "dype lenker" til informasjon på tjenermaskinen deres. Brukt alene er dette en relativt dårlig løsning.

Dette er på langt nær all den informasjonen som blir sendt fra en nettleser når den spør om informasjon fra en tjenermaskin, men jeg håper at denne korte beskrivelsen gir et nyttig innblikk i hva et klikk betyr i praksis med hensyn til utveksling av informasjon. Det er også viktig å huske på at nettlesere også sender fra seg tilsvarende informasjon uten at en bruker er aktiv og klikker på lenker.

Virtuelle adresser

En URI refererer ikke alltid til en eksisterende webside eller datafil på en tjenermaskin. Adressen kan like gjerne benyttes som ett av flere parametere som et datamaskin­program benytter til å lage en unik webside. Det kan være nettaviser som lager til en hver tid oppdaterte nyhets­oversikter, og det kan være nettbutikker som lager personlige sider for hver enkelt kunde.

Enkelte nettsted endrer URIen slik at hvert enkelt besøk blir unikt. Et eksempel på slike mekanismer er nettbutikken amazon.com som bruker slik modifisering av nettadressene. Dette gjør nettbutikken i stand til å måle hvor mye tid hver besøkende bruker på et enkelt besøk og hvor mange sider brukeren henter fram i løpet av besøket. Dette gjør amazon.com ved å legge inn et tall i hver URI som identifiserer den enkelte brukersesjon. Denne teknikken kan også brukes på andre måter. Når jeg lager en referanse til nettstedet amazon.com fra mitt nettsted legger jeg firmanavnet mitt, digme, inn i den aktuelle URI. Dette forteller amazon.com at en sesjon startet fra mitt nettsted og jeg vil i enkelte tilfeller få provisjon av salg som gjøres i løpet av denne sesjonen.

Det er dermed ikke noen selvfølgelighet at én bestemt URI gir to brukere den samme informasjonen. Dette har betydning for bruk av hyperlenker på verdensveven. Hvis jeg legger inn en referanse til nettstedet Google.com vet jeg ikke hva slags side andre brukere får ved å klikke på denne lenken. Det er avhengig av hvilket språk den enkelte bruker har satt som preferanse i sin nettleser. Dette er forhold man bør ta hensyn til når man omtaler begrep som pekeransvar.


Nettleser er et norsk ord for browser.

I denne artikkelen brukes ordet tjenermaskin for det som på engelsk kalles webserver

Verdensveven er et norsk betegnelse for World Wide Web (WWW).

For dem som lurer om det ikke er URL det heter så er dette en undergruppe i den mer omfattende definisjonen av URI.

Med brukersesjon menes et besøk på et nettsted. I løpet av et besøk kan en bruker gjerne hente fram flere websider fra det samme nettstedet.


Oppdatert 2000-11-14, © Digme
Meld gjerne fra om feil eller mangler.