Guides 6 min läsning

301 vs 302: vilken omdirigering ska du använda och hur kontrollerar du den?

Permanent eller tillfällig, 301 eller 308, 302 eller 307: vad varje omdirigering säger till webbläsare och sökmotorer, hur du undviker kedjor och loopar och hur du kontrollerar en omdirigering.

En 301-omdirigering säger att en sida har flyttat för gott; en 302 säger att flytten är tillfällig och att den gamla adressen kommer tillbaka. Sökmotorerna agerar på skillnaden: efter en 301 indexerar de den nya adressen i stället för den gamla, efter en 302 behåller de oftast den gamla. Använd 301 (eller 308) för allt som är permanent, som en sida som bytt namn, en ny domän eller övergången till HTTPS, och 302 (eller 307) bara när den ursprungliga adressen verkligen kommer tillbaka. Håll varje omdirigering till ett enda steg och kontrollera den med ett verktyg som visar varje steg.

Statuskoderna för omdirigering

En omdirigering är ett svar i 3xx-intervallet med en Location-header som anger den nya adressen. Fem koder spelar roll i praktiken:

KodBetydelseBehåller metodenAnvänd den för301 Moved PermanentlyFlyttad för gottInte garanterat: webbläsare gör om en POST till en GETSidor som bytt namn, nya domäner, HTTP till HTTPS302 FoundTillfälligt någon annanstansInte garanterat: webbläsare gör om en POST till en GETKortvariga flyttar, skicka besökare till en inloggningssida303 See OtherHämta resultatet från en annan adressNej, alltid en GETEfter att ett formulär skickats, så att en omladdning inte skickar det två gånger307 Temporary RedirectTillfälligt någon annanstansJa, metod och bodyTillfälliga flyttar av API-endpoints och formulär308 Permanent RedirectFlyttad för gottJa, metod och bodyPermanenta flyttar av API-endpoints och formulär

För vanliga sidor, som webbläsare hämtar med GET, beter sig 301 och 308 likadant, och detsamma gäller 302 och 307. Skillnaden märks när en klient skickar en POST: efter en 301 eller 302 upprepar de flesta klienter den som en GET utan body, medan 307 och 308 får dem att skicka samma förfrågan igen. Därför bör API:er som flyttar en endpoint använda 308 eller 307. Hela listan med koder finns i referensen för HTTP-statuskoder.

Vad omdirigeringar gör med SEO

Googles dokumentation om omdirigeringar behandlar 301 och 308 som permanenta och 302, 303 och 307 som tillfälliga. En permanent omdirigering är en stark signal om att målet ska visas i sökresultaten i stället för den gamla adressen. En tillfällig är en svag signal, så den gamla adressen ligger oftast kvar i indexet.

Det ger tre vanliga misstag:

En 302 för en permanent flytt. Många ramverk och plugins omdirigerar med 302 som standard. Kontrollera efter en sajtflytt att omdirigeringarna verkligen svarar 301 eller 308.

Allt omdirigeras till startsidan. När en gammal sida saknar motsvarighet kan Google behandla en omdirigering till startsidan som en soft 404. Skicka varje gammal sida till den närmaste motsvarigheten, eller låt den svara 404 eller 410.

Gamla länkar som pekar på omdirigeringar. En omdirigering är ett skyddsnät, inte ett mål. Uppdatera interna länkar, canonical-taggar och sitemapen till den slutliga adressen, så att varken besökare eller crawlers får betala för det extra steget.

Omdirigeringar på serversidan ger den tydligaste signalen. Meta refresh-taggar och JavaScript-omdirigeringar fungerar för besökare, men sökmotorer ser dem först när sidan har laddats, och andra klienter kanske inte ser dem alls.

Vilken ska du använda?

En sida har bytt namn eller slagits ihop med en annan: 301.

Sajten har flyttat till en ny domän, till HTTPS eller mellan www och domänen utan www: 301 från varje gammal variant direkt till den slutliga adressen.

En sida ligger tillfälligt någon annanstans, för en kampanj eller medan den byggs om: 302.

En besökare måste logga in först: 302 till inloggningssidan och sedan tillbaka.

Ett formulär har skickats: 303 till resultatsidan.

En API-endpoint har flyttat: 308 om det är för gott, 307 om det är tillfälligt, så att klienterna behåller metod och body.

Sajten är nere för underhåll: ingen omdirigering. Svara 503 Service Unavailable på den ursprungliga adressen, så att sökmotorerna kommer tillbaka senare i stället för att indexera en underhållssida.

Webbläsare minns permanenta omdirigeringar

Webbläsare cachar 301- och 308-svar, ofta länge, och följer dem utan att fråga servern igen. En felaktig permanent omdirigering fortsätter därför att skicka återkommande besökare fel även efter att du har rättat servern. När du lägger upp en ny regel, testa den först som 302 och byt till 301 när den stämmer. Har en felaktig 301 redan gått ut hjälper en Cache-Control: no-store-header på framtida omdirigeringar nya besökare, men kopiorna som webbläsarna redan har går ut i sin egen takt.

Omdirigeringskedjor och loopar

En kedja är en omdirigering till en adress som omdirigerar igen: http://example.com till https://example.com till https://www.example.com till https://www.example.com/en/. Varje steg är ytterligare en tur och retur innan sidan börjar laddas, och Google följer högst 10 steg. Kedjor växer under år av sajtflyttar, där varje flytt lägger sin regel ovanpå den förra. Lös dem genom att skicka varje gammal variant direkt till den slutliga adressen i ett enda steg.

En loop är en kedja som aldrig tar slut: två regler skickar besökare fram och tillbaka tills webbläsaren ger upp med ”för många omdirigeringar”. De vanliga orsakerna:

HTTP och HTTPS. Ett CDN pratar med din server över HTTP, medan servern omdirigerar varje HTTP-förfrågan till HTTPS. Bakom Cloudflare är det inställningen Flexible SSL; Full (strict) löser det.

www och domänen utan www. Webbservern lägger till www och applikationen tar bort det, eller tvärtom. I WordPress, kontrollera att WordPress-adress och Webbplatsadress stämmer med serverns regel.

Avslutande snedstreck och språkregler. En regel lägger till ett snedstreck eller ett språkprefix, en annan tar bort det.

Så kontrollerar du en omdirigering

I en terminal visar curl varje steg med statuskod och Location-header:

curl -sIL http://example.com/old-page | grep -iE ”^(HTTP|location)”

HTTP/1.1 301 Moved Permanently
Location: https://example.com/old-page
HTTP/2 301
location: https://example.com/new-page
HTTP/2 200

Två steg: den andra regeln borde ha varit den första. I en webbläsare öppnar du utvecklarverktygen, kryssar i Preserve log på fliken Network och laddar den gamla adressen; varje omdirigering får en egen rad. Tänk på att webbläsaren kan svara på en 301 från sin cache, så ett privat fönster ger en renare bild.

Eller använd vår kostnadsfria omdirigeringskontroll: ange en URL och se varje steg med statuskod, var kedjan slutar och om den loopar, blir för lång eller använder en tillfällig omdirigering där du troligen menade en permanent. Den följer upp till 5 steg, kontrollerade live från Stockholm.

Så sätter du upp en 301

De flesta webbhotell och CDN:er har en inställning för omdirigeringar i sin panel. I serverkonfigurationen:

# nginx: one page
location = /old-page { return 301 /new-page; }

# nginx: a whole domain, keeping the path
server {
server_name old-example.com www.old-example.com;
return 301 https://example.com$request_uri;
}

# Apache (.htaccess): one page
Redirect 301 /old-page /new-page

Kontrollera sedan den gamla adressen, dess HTTP- och www-varianter och en adress med en query string, och se till att var och en når den slutliga sidan i ett enda steg.

Övervaka omdirigeringar med Uptimecheck

En HTTP(S)-monitor i Uptimechecks upptidsövervakning följer som standard upp till 10 omdirigeringar och bedömer sidan i slutet, som räknas som uppe när den svarar med en status från 200 till 399. En loop, eller en kedja som är längre än så, rapporteras som nere med ”Too many redirects”, och incidenten anger när kedjan studsar mellan HTTP och HTTPS eller mellan www och domänen utan www. Kontrollerna körs så ofta som varje minut från Stockholm, London och New York, och en andra kontroll bekräftar ett fel innan du får ett larm.

Vill du bevaka själva omdirigeringen, till exempel efter en domänflytt, stänger du av Follow redirects så att monitorn bedömer omdirigeringens egen statuskod, sätter Expected status codes till 301 och lägger till en header-kontroll att Location är lika med den nya adressen. Om någon senare ändrar omdirigeringen till en 302 eller pekar den någon annanstans får du veta det. Läs hur du lägger till din första monitor och guiden till HTTP-statuskoder i övervakning.

Få veta när en flytt går sönder. Prova Uptimecheck gratis i 14 dagar, inget kreditkort krävs.

Frågor

Vad är skillnaden mellan en 301- och en 302-omdirigering?

En 301 säger att sidan har flyttat för gott, så sökmotorer indexerar den nya adressen och webbläsare minns omdirigeringen. En 302 säger att flytten är tillfällig, så den gamla adressen ligger kvar i indexet och webbläsare frågar igen nästa gång.

Ska jag använda 308 i stället för 301?

För vanliga sidor beter de sig likadant, och 301 är det säkrare valet för äldre klienter. Använd 308 när klienter kan skicka POST- eller PUT-förfrågningar till den gamla adressen, eftersom den får dem att upprepa samma metod och body.

Skadar en 302-omdirigering SEO?

Inte när flytten verkligen är tillfällig. Används den för en permanent flytt ligger den gamla adressen kvar i sökresultaten i stället för den nya, så byt till en 301.

Hur många omdirigeringar är för många?

Sikta på ett enda steg från varje gammal adress till den slutliga sidan. Google följer högst 10 steg, och varje steg lägger till en tur och retur innan sidan börjar laddas.

Läs vidare

Guides 5 min läsning

Så räknar du ut upptid i procent: formel och exempel

Formeln för upptid, räkneexempel med incidenter och underhåll, hur du kombinerar upptiden för flera komponenter och hur upptid, tillgänglighet och tillförlitlighet skiljer sig åt.

Läs

Guides 6 min läsning

Vad betyder 99,9 % upptid? Nertid enligt SLA förklarad

99,9 % upptid tillåter 43 minuter och 49 sekunder nertid en genomsnittlig månad. Vad varje nivå av nior tillåter per dag, månad och år, hur SLA:er mäter upptid, hur servicekrediter fungerar och hur du väljer ett mål.

Läs

Guides 6 min läsning

Felbudget: vad det är och hur du använder den

Så räknar du ut en felbudget utifrån en SLO, vad som förbrukar den, hur burn rate fungerar och hur du skriver en felbudgetpolicy som teamet faktiskt följer.

Läs

Driftstopp är historia.

Sätt upp din första övervakning på under en minut, eller ta en titt i livedemon först.

14 dagar gratis · Sedan gratis för 5 övervakningar · Inget kreditkort