Karl Ove Hufthammer

Kanoniske nettadresser

4. juli 2003 (oppdatert 1. juni 2009)

Fleire adresser til same sida

Det er ikkje uvanlig at ein har fleire adresser som peikar til same nettsida. For eksempel har avisa Bergens Tidende ulike domene som peikar til same nettstad:

Endå meir vanlig er adresser med og utan filnamn som index.html, index.aspx og index.php:

(Sistnemnte adressa fungerer for øvrig ikkje lenger, noko som understreker eit poeng eg har debattert før.)

Merk at det her er snakka om forskjellige adresser; dei kunne alle ført til forskjellige sider.

Uheldig

Praksisen med å ha fleire adresser som peikar til same resurs er uheldig, av fleire grunnar:

Lenkjefargelegging

Det fører for eksempel til at lenkjefargelegging ikkje vil fungera skikkelig. Viss du har vore inne på http://www.bergens-tidende.no/ og lest ein artikkel, vil lenkjer til denne (på andre sider) visast i ein annan farge (ofte lilla i staden for blå), for å indikera at sida er «besøkt». Men viss andre sider har lenkjer til (same) artikkelen på http://bt.no/, vil ikkje lenkja verta markert som besøkt, sidan nettlesaren ikkje kan veta at det er snakk om same sida.

Mellomlager

Eit liknande problem har me med mellomlageret («cache»-en) i nettlesarar. Nylig besøkte sider vert automatisk lagra på harddisken, slik at det skal gå raskt å visa dei seinare. Når nettlesaren skal lasta ned ei nettsida (eller eit bilde, eller kva som helst), sjekkar han først siste endringsdato for fila, og brukar heller versjonen lagra på harddisken viss fila ikkje endra sidan førre nedlasting. Men viss det er snakk om forskjellige adresser til same resurs, må han henta ned alle filene på nytt, sjølv om han har oppdaterte lokalkopiar. Resultatet er tregare surfing.

Søkemotorar

Søkemotorar har òg store problem med å handtera forskjellige adresser til same resursar. Dette kan føra til at dei indekserer same sida fleire gongar, og at søkeresultata vert forurensa med fleire lenkjer til same sida.

Nokre søkemotorar brukar òg lenkjepopularitet til å rangera sider. Viss mange har lenkjer til sida di, kjem denne høgare opp i søkeresultata. Men viss lenkjene peikar til ulike adresser for same sida vil ikkje søkemotoren oppfatta lenkjepopulariteten din rett.

Til sist kan òg søkemotorar oppfatta mange forskjellige adresser til same sida som «spamming», og rett og slett blokkera sidene dine. Synd!

Løysinga

Løysinga er det eg vil kalla kanoniske nettadresser. Det vil kort sagt seia: Éin resurs – éi adressa. Kvar resurs skal berre ha éi offisiell adressa, og det er denne som skal brukast i lenkjer og liknande.

Sjølvsagt kan ein ha fleire adresser som fungerer, men desse skal i sofall vidaresenda brukaren til den offisielle adressa, for å hindra at den uoffisielle «sprer seg». Ein kan for eksempel ha vidaresendingar for vanlige skrivefeil eller variantar:

Her er det interessant at http://dagbladet.no/ faktisk vidaresender deg til http://www.dagbladet.no/, mens http://www.dagbaldet.no/ ikkje gjer det. Resulatet er at det er ganske mange lenkjer til artiklar i «Dagbaldet» … (Oppdatert: No, 2003-07-17, ser det ut til at alle adressene vidaresender deg.)

Oppsett av vidaresendingar i praksis

Det er veldig lett å setta opp grunnleggande vidaresending. Eg har skrive to artiklar om dette:

Den siste artikkelen er nok mest relevant, men tar ikkje for seg vidaresending basert på domenenamn. Då må me vera litt meir avanserte. Her er ei løysing som fungerer med vevtenaren Apache:

Domenebasert vidaresending

Lag ei .htaccess-fil som beskrive i vidaresendingsartikkelen, og sørg for at ho inneheld følgjande:

Options FollowSymLinks
RewriteEngine on
RewriteBase /

Dette slår på den avanserte vidaresendingsmotoren (dessverre ikkje støtta hos alle). For å vidaresenda frå http://www.bergens-tidende.no/ til http://www.bt.no/ skriv me:

RewriteCond %{HTTP_HOST} ^www.bergens-tidende.no$
RewriteRule ^(.*)$ http://www.bt.no/$1 [R=301,L]

Fjerning av filnamn

No skal me verta kvitt filnamn som index.html i adressene. Eksempelvis skal http://www.bt.no/kultur/index.html verta til http://bt.no/kultur/. Følgjande skal fungera:

RewriteCond %{THE_REQUEST} "/index\.html HTTP"
RewriteRule ^(.*/)index\.html$ http://www.bt.no/$1 [R=301]

Og heilt til slutt må me hugsa å oppdatera eventuelle sider på nettstaden som peikar til uoffisielle adresser til å peika til offisielle adresser. Eit godt lenkjesjekkingsprogramm som varslar om vidaresendingar kan vera nyttig 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.