Karl Ove Hufthammer

Lenkjeròte og vidaresending

8. juni 2005

Internett er full av lenkjer som ikkje går nokon plass – brotne lenkjer. Dette er verken ønskjelig eller nødvendig. Denne artikkelen handlar om brotne lenkjer, og om korleis du unngår dei ved å bruka automatisk vidaresending.

Dei aller, aller fleste har nok opplevd å følgja ei lenkja, berre for å verta møtt med følgjande feilmelding:

404 Not Found

Denne lite hjelpsame meldinga er meint å fortelja oss at sida ikkje finst tilgjengelig på denne adressa. At lenkjer blir brotne slik, ofte kalla «lenkjeròte», er eit stadig veksande problem. Dette er synd, då det faktisk er heilt unødvendig!

Grunnar til lenkjeròte

Det finst fleire grunnar til lenkjeròte. For eksempel er sidene flytta til ein ny nettstad (eit nytt domene), eller nettstaden er reorganisert og alle sidene har fått nye adresser. Det finst mange andre grunnar, men alle er like dårlige. Det er nemlig mulig å gjera det slik at brukarar som kjem til ei ny adressa automatisk vert vidaresende til den nye adressa.

Automatisk vidaresending

Måten nettsider vert overført på heiter HTTP, og denne inneheld ein mekanisme for slik automatisk vidaresending. Teknisk sett føregår vidaresendinga slik (du kan hoppa over resten av avsnittet viss du ikkje er interesser i det reint tekniske): Nettlesaren sendar ein førespurnad til tenaren (maskina der nettsidene ligg) om å få lesa nettsida som finst på adressa. Tenaren svarer at sida er flytta, og oppgjev den nye adressa. Nettlesaren sendar ein førespurnad til tenaren med den nye adressa, og mottar so dokumentet, eller blir vidaresendt éin gong til.

Alternativ

Det finst alternativ til slik vidaresending. På den gamle adressa kan du for eksempel legga inn ei melding om at sida er flytta, med lenkja til den nye. Du kan òg få til ei slags automatisk vidaresending ved å leggja til noko spesielt i nettsida, men begge desse er dårlige løysingar. HTTP-basert vidaresending har blant anna følgjande fordelar:

Forskjellige former for vidaresending

Det finst fire former for HTTP-basert vidaresending.

Varige vidaresending – 301 Moved Permanently
Dette gjeld sider som har fått nye adresser. Søkemotorar, bokmerke og lenkjer bør oppdaterast til å peika til den nye adressa. Dette er den mest vanlige forma for vidaresending.
Mellombels vidaresending – 302 Found
Sida er ikkje formelt «flytta», men finst tilgjengelig på ei anna adressa. Nettlesarar, søkemotorar og annan programvare bør helda fram med å bruka den gamle adressa. Denne vidaresendinga kan du for eksempel bruka viss du av ymse praktiske omsyn må ha sidene på ein annan tenar ei stund.
Vidaresending til ei anna adresse – 303 See Other
Svaret på førespurnaden finst på ei anna adressa, men dette er ikkje den sida nettlesaren ba om. Sida er med andre ord blitt «erstatta» av ei anna. Denne vidaresendinga blir oftast brukt situasjonar som for eksempel vevgrensesnitt for e-post. Der vil «Send e-post»-knappen vera ei lenkja til eit program (som kjører på tenaren) som sender e-posten, mens du blir vidaresendt til innboksen. Men denne forma for vidaresending kan òg brukast i andre tilfelle der ei side erstattar ei anna. For eksempel kan ei side med påmeldingsskjema til ein konferanse erstattast med ein rapport frå konferansen når denne er ferdig. Dette er mykje betre enn berre å la den gamle lenkja forsvinna.
Fjerning av sida – 410 Gone
Dette er ikkje vidaresending, men eg tar med denne koden likevel. Denne brukar du når sida er bevisst fjerna. Det vil seia at ho ikkje er flytta, og ikkje er erstatta – ho er død! Dette bør nesten aldri skje (jf. «andre artiklar»), men det finst nokre veldig få tilfelle der det er fornuftig. Då er det betre å setja opp ei skikkelig melding om dette ved hjelp av denne HTTP-koden enn å berre fjerna sida. Då veit brukarar og dei som har lenkjer til sida di at det er nytteslaust å leita etter ei ny adressa.

Korleis setta opp automatisk vidaresending

Korleis du set opp automatisk vidaresending er forskjellig for kva vevtenarar nettsidene ligg på. Les dokumentasjonen for den aktuelle tenaren for meir informasjon. Men Apache er heilt klart den mest brukte vevtenaren, og eg har skrive ein liten artikkel om korleis du sett opp vidaresending med denne (det er kjempelett!).

Andre artiklar

Denne artikkelen vart faktisk ganske forskjellig frå det eg hadde planlagt. Eg hadde tenkt å skriva meir om problemet med lenkjeròte, korleis nettadresser bør utformast og litt om forholdet mellom nytt og gammalt innhald. Eg kjem nok til å skriva andre artiklar om nettopp dette, men fleire har vore inne på same emne før meg, og har vore inspirasjonskjelder for denne artikkelen. Her er nokre kjekke artiklar eg tilrår på det varmaste:

Cool URIs don’t change
Dette er sjølve klassikaren innan emnet. Han er skriven av oppfinnaren av verdsveven, og hovudpoenget hans er at nettadresser alltid må fungera, sjølv om sidene vert flytta. Artikkelen inneheld mykje interessant informasjon, men det er eit par småting eg er ueinig med han i: emnebaserte, hierarkiske adresser.
Fighting Linkrot
Eg er ikkje spesielt begeistra for Jakob Nielsen, men her har han faktisk eit par gode artiklar. Denne gjeld lenkjeròte. Sørg for å få med deg lesarkommentarane nedst på sida.
Web Page Must Live Forever
Her argumenter Jakob Nielsen for at sider må leva evig, sjølv om dei inneheld gammalt materiale. Eg er einig i det meste, men ikkje alt han seier i denne artikkelen. Få òg med deg lesarkommentarane her.

Emne: Nettsideutvikling

[Abonner på kommentarar til artikkelen]

Kommentarar

Legg til kommentar





Du kan bruka dei vanligaste elementa og attributta i HTML. Avsnitt lagar du med vanlige linjeskift. Eg kan komma til å gjera typografiske og ortografiske endringar i innlegg (men vil aldri endra sjølve innhaldet), samt fjerna upassande innlegg.

Skriven av Karl Ove Hufthammer og driven med WordPress. Du kan abonnera på innleggs-RSS eller kommentar-RSS.