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:
- Ho er heilt transparent for brukaren: han trykkjer på ei lenkje, og sida dukkar opp (men på ei anna adresse enn lenkja viste til).
- Søkemotorar får beskjed om at sida er flytta, og kan oppdatera seg sjølv automatisk (med dei andre løysingane ville søkemotorane helda fram med å peika til den gamle adressa).
- Nettlesarar kan automatisk oppdatera bokmerke når dei besøker sider som er flytta.
- Lenkjesjekkingsprogram kan gje beskjed til forfattarane som har lenkjer til dine sider at sidene er flytta, slik at lenkjene kan oppdaterast.
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.
3 kommentarar