Tartalomkészítés.hu

301 átirányítás: teljes útmutató

Technikai SEO

A 301 átirányítás egy HTTP válasz, amely azt közli a böngészővel és a keresővel, hogy a kért URL véglegesen új címre költözött. A látogató automatikusan az új címre kerül, a kereső pedig idővel az új URL-t indexeli a régi helyett, és a régire mutató jeleket is oda köti. Költözéskor, URL-átalakításkor és duplikátumok összevonásakor ez az alapeszköz.

Alapfogalmak

Amikor a böngésző vagy a keresőrobot lekér egy URL-t, a szerver egy háromjegyű állapotkóddal válaszol. A 3xx tartományba tartozó kódok átirányítást jelentenek: a kért tartalom nem itt van, hanem egy másik címen, amelyet a válasz Location fejléce ad meg. A 301-es kód jelentése „Moved Permanently", vagyis az erőforrás véglegesen elköltözött. A kliens ilyenkor az új címet kéri le, és a végleges jelleg miatt a jövőben is azt használhatja.

A „végleges" szó a lényeg. A keresőnek ez azt üzeni, hogy a régi URL nem fog visszatérni, ezért a találatok között az új címet érdemes mutatni. Ebben különbözik a 301 az ideiglenes átirányításoktól, amelyeknél a kereső a régi címet tarthatja meg az indexben, mert arra számít, hogy a tartalom oda visszakerül.

Az átirányítási kódok összevetése

KódJelentésJellegTipikus használat
301Moved PermanentlyVéglegesKöltözés, URL-változás, duplikátumok összevonása
302FoundIdeiglenesÁtmeneti kampány, rövid karbantartás
307Temporary RedirectIdeiglenes, a kérés módszere megmaradIdeiglenes átirányítás űrlapküldésnél is
308Permanent RedirectVégleges, a kérés módszere megmaradVégleges átirányítás, ahol a POST kérés sem változhat GET-re

A keresőoptimalizálás szempontjából a 301 és a 308 egyaránt végleges átirányításnak számít, a 302 és a 307 ideiglenesnek. A különbség a kettő között a kérés módszerének kezelése, ami az egyszerű laplekéréseknél nem játszik szerepet. Az ideiglenes változatról a 302 átirányítás útmutató szól részletesen.

Kapcsolódó fogalmak

  • Forrás URL: a régi cím, amelyről az átirányítás indul.
  • Cél URL: az új cím, amelyre az átirányítás mutat.
  • Átirányítási lánc: amikor a cél maga is továbbirányít, és a kliens több lépésben jut el a végső lapig.
  • Átirányítási hurok: amikor a lánc visszaér egy korábbi címre, és a kliens sosem jut el tartalomhoz.
  • Átirányítási térkép: a régi és az új URL-ek páros listája, amely egy költözés alapdokumentuma.

Mikor van szükség 301-re

A 301 minden olyan helyzetben indokolt, amikor egy URL tartalma véglegesen más címre kerül, és a régi címre még érkezhetnek látogatók vagy linkek. Tipikus esetek: domainváltás, áttérés http-ről https-re, a www és a www nélküli alak egységesítése, az URL-szerkezet átalakítása, két hasonló témájú lap összevonása egyetlen erősebb lapba, vagy egy megszűnt termék helyettesítése a közvetlen utódjával. Közös bennük, hogy a régi címnek van értelmes, tartós párja az új helyen. Ha ilyen pár nincs, az átirányítás nem a jó eszköz.

Hogyan működik?

Az átirányítás egy rövid párbeszéd a kliens és a szerver között. Ha ezt a párbeszédet érted, a hibák nagy része is érthetővé válik.

A kérés és a válasz

A kliens lekéri a régi URL-t. A szerver nem a lap tartalmát küldi vissza, hanem egy 301-es állapotkódot és egy Location fejlécet az új címmel. A böngésző ezt látva automatikusan lekéri az új címet, a látogató pedig ebből legfeljebb annyit érzékel, hogy a címsorban más URL jelenik meg.

HTTP/1.1 301 Moved Permanently
Location: https://www.pelda.hu/uj-cim/

A böngésző gyorsítótára

A végleges átirányítást a böngészők gyorsítótárazhatják. Ez azt jelenti, hogy aki egyszer már átirányítódott, annál a böngésző a következő alkalommal a szerver megkérdezése nélkül is az új címre ugorhat. Ennek gyakorlati következménye van: egy tévesen beállított 301 nem feltétlenül tűnik el azonnal, amikor a szerveren javítod, mert a látogatók böngészője még emlékszik rá. Ezért tesztelni érdemes ideiglenes átirányítással vagy gyorsítótár nélkül, és a 301 csak akkor kerüljön élesbe, amikor a cél biztosan végleges.

A kereső feldolgozása

A keresőrobot ugyanígy követi az átirányítást. A 301-et a Google erős jelzésnek tekinti arra, hogy a cél URL legyen a kanonikus változat. Idővel a régi URL helyett az új jelenik meg a találatok között, és a régi címre mutató külső linkek jelei az új címhez kapcsolódnak. Ez nem azonnali: a keresőnek előbb újra fel kell térképeznie a régi URL-t, és ennek ideje a webhely méretétől és a lap fontosságától függ. A kanonikus választásról a canonical útmutató ír részletesen.

Az átirányítás és a lap tartalma

A 301-es válasz törzse a kliens számára lényegtelen, a böngésző és a robot is a Location fejlécet követi. Ezért egy átirányító URL-en nincs értelme tartalmat, meta adatokat vagy canonical elemet karbantartani: a kereső ezeket nem a régi címen, hanem a célon értékeli. A figyelmet a célra kell fordítani, annak kell rendben lennie.

Mi nem 301 átirányítás

Léteznek kliensoldali átirányítások is. A meta refresh egy HTML elem, amely a lap betöltése után egy másik címre küldi a böngészőt. A JavaScript átirányítás a szkript futása után vált címet. A kereső ezeket is felismerheti, de kevésbé megbízható és lassabb jelzés, mint a szerveroldali 301. Ahol a szerver beállításaihoz hozzáférsz, a 301 a helyes megoldás; a kliensoldali változat csak végső eset.

Fő módszerek

A 301 beállításának módja a szerver típusától és a tartalomkezelőtől függ. A cél mindegyiknél ugyanaz: egyetlen lépésben, közvetlenül a végső címre vigyen.

Szerverkonfiguráció

Apache szerveren a leggyakoribb a .htaccess fájl vagy a virtuális host konfigurációja. Egyedi címhez a Redirect utasítás, mintákhoz a RewriteRule használható. Nginx szerveren a return utasítás az egyszerűbb és gyorsabb megoldás. Az alábbi minták szemléltetik a szerkezetet; élesítés előtt mindig teszt környezetben ellenőrizd őket.

# Apache, egyetlen cím
Redirect 301 /regi-cim/ https://www.pelda.hu/uj-cim/

# Nginx, egyetlen cím
location = /regi-cim/ {
    return 301 https://www.pelda.hu/uj-cim/;
}

Tartalomkezelő és bővítmény

Sok tartalomkezelő saját átirányításkezelőt kínál, vagy bővítménnyel egészíthető ki. Ez kényelmes, ha a szerkesztők maguk kezelik az URL-változásokat, és sok egyedi átirányítás van. Ellenőrizd, hogy a bővítmény valóban 301-es kódot küld, nem 302-t, és hogy az átirányítás a tartalomkezelő betöltése előtt vagy után fut. Nagy számú szabálynál a szerverszintű megoldás általában gyorsabb.

Mintaalapú átirányítás

Ha egy teljes könyvtárszerkezet változik, például a /blog/ útvonal /cikkek/ lett, nem kell minden címhez külön szabály. Egy reguláris kifejezésen alapuló szabály a régi útvonal minden címét a megfelelő újra viszi. Itt különösen fontos a tesztelés, mert egy rosszul megírt minta egy egész webhelynyi címet vihet rossz helyre.

Webhelyköltözés

Domainváltáskor minden régi URL-nek a pontos új párjára kell átirányítania, nem a kezdőlapra. Az alapdokumentum az átirányítási térkép: egy táblázat, amelyben minden régi címhez tartozik egy új cím. A Google Search Console a domainváltáshoz külön eszközt is kínál (Címváltoztatás), amely a 301-ek mellett tájékoztatja a keresőt a költözésről. Az átirányításokat a költözés után hosszú ideig érdemes fenntartani; a Google dokumentációja legalább egy évet javasol, de ha van rá mód, tartsd meg őket tartósan.

Döntési szabály: hová mutasson a 301

  1. Van a régi lapnak közvetlen, azonos tartalmú utódja: oda.
  2. Nincs pontos utód, de van szorosan kapcsolódó lap, amely a látogató kérdésére felel: oda.
  3. Nincs releváns cél: ne irányíts át, hanem adj 404 vagy 410 választ, lásd a 404 hiba útmutatót.
  4. A régi lap csak átmenetileg nem elérhető: ne 301, hanem ideiglenes átirányítás kell.

Gyakori hibák

A 301-es hibák egy része azonnal látszik, más része csak hónapokkal később, a forgalom vagy a helyezések változásában. A leggyakoribbak ugyanabból a hibás gondolkodásból fakadnak: az átirányítást egyszeri technikai lépésnek tekintik, nem a webhely hosszú távú karbantartásának.

Tömeges átirányítás a kezdőlapra

Költözéskor vagy törléskor csábító minden régi címet a kezdőlapra küldeni. A látogató ilyenkor nem azt kapja, amit keresett, a kereső pedig az ilyen, nem releváns célra mutató átirányítást soft 404-ként kezelheti. Ez azt jelenti, hogy a régi URL-re mutató jelek nem kerülnek át az új helyre, és az átirányítás gyakorlatilag nem ér semmit.

Láncok és hurkok

Minden újabb átalakításnál egy újabb réteg átirányítás kerül a régiekre: A a B-re, B a C-re mutat. Az ilyen redirect chain lassítja a betöltést, feleslegesen terheli a feltérképezést, és egy bizonyos hossz felett a robot nem is követi végig. Rosszabb eset a redirect loop, amikor a lánc visszaér önmagába, és a lap elérhetetlenné válik. A javítás mindkét esetben ugyanaz: minden régi cím közvetlenül a végső célra mutasson.

302 a 301 helyett

Sok rendszer alapértelmezetten ideiglenes átirányítást küld. Ha egy végleges költözést 302-vel oldasz meg, a kereső sokáig a régi címet tarthatja meg az indexben. A Google tartósan fennálló 302-t idővel véglegesként is kezelhet, de erre nem érdemes építeni: a helyes kód egyértelmű jelzés.

Egyéb gyakori hibák

  • A belső linkek a régi címekre mutatnak, így minden kattintás egy átirányításon megy át. A belső linkeket az új címekre kell frissíteni.
  • A sitemap a régi, átirányított címeket sorolja fel.
  • A canonical a régi címre mutat, miközben az átirányít, így a két jelzés ellentmond egymásnak.
  • Az átirányításokat néhány hét után törlik, és a régi linkek 404-re futnak.
  • A protokoll- és domainátirányítás két külön lépésben történik, például http-ről https-re, aztán www-re, ami felesleges láncot hoz létre.

Régebben elterjedt nézet volt, hogy minden átirányítás „elveszít" valamennyit a régi címre mutató linkek értékéből. A Google nyilvános közlései szerint a 3xx átirányítások nem okoznak ilyen veszteséget. Ettől még nem közömbös, hogyan irányítasz át: a nem releváns cél, a lánc és a hurok valódi probléma, de nem egy rejtett levonás miatt, hanem mert a jelzés zavaros lesz.

Mérés

A 301 átirányítások ellenőrzése egyedi és tömeges szinten is fontos. Egyedi szinten azt nézed, egy adott cím jól működik-e, tömeges szinten azt, hogy a webhely egésze tiszta-e.

Egyedi ellenőrzés

A legegyszerűbb módszer a parancssor. A curl egy fejléckérésre megmutatja az állapotkódot és a Location fejlécet, a böngésző gyorsítótára nélkül.

curl -I https://www.pelda.hu/regi-cim/

Ha a válaszban 301 és a helyes új cím szerepel, az átirányítás jó. Ha a teljes láncot is látni akarod, a -L kapcsolóval a curl végigköveti az átirányításokat, és minden lépést kiír. A böngésző fejlesztői eszközeinek hálózati lapja ugyanezt mutatja, de ott figyelni kell a gyorsítótárra.

Tömeges ellenőrzés

Egy SEO feltérképező eszközzel végigjárhatod a webhelyet, és kigyűjtheted az összes átirányító belső linket, a láncokat és a hurkokat. Költözés után az átirányítási térkép régi címeit listaként is betöltheted, és ellenőrizheted, hogy mindegyik egyetlen lépésben, 301-gyel, a megfelelő új címre visz-e, és az új cím 200-as választ ad-e.

Search Console

Az oldalindexelési jelentésben az átirányított URL-ek külön állapotban jelennek meg (angol felületen „Page with redirect"). Ez önmagában nem hiba, hiszen a régi címek átirányítása szándékos. A figyelmeztető jel az, ha ebben a csoportban olyan címek vannak, amelyeknek indexelhető lapnak kellene lennie, vagy ha a sitemap átirányított címeket tartalmaz. Az URL-ellenőrző eszközzel egy konkrét régi címnél is megnézheted, mit lát a kereső.

Kidolgozott példa 1: URL-szerkezet átalakítása

Egy webhely a dátumot tartalmazó cikk-URL-ekről rövid, beszédes címekre állt át. Az átirányítást egy mintaalapú szabály végezte, de a régebbi, már korábban egyszer átirányított cikkeknél kétlépéses lánc jött létre. A feltérképezés kimutatta a láncokat; a javítás az volt, hogy a régi szabályok is közvetlenül a végső címre mutattak, a belső linkeket pedig az új címekre frissítették. Így minden régi cím egyetlen lépésben ért célba, és a belső navigáció már egyáltalán nem érintett átirányítást.

Kidolgozott példa 2: megszűnt termékek

Egy webáruház a megszűnt termékeket rendszeresen a kezdőlapra irányította. A Search Console-ban ezek egy része soft 404-ként jelent meg. Az új szabály szerint a megszűnt termék a közvetlen utódjára irányít, ha van; ha nincs, a szűkebb kategóriájára, ha az valóban hasonló termékeket kínál; ha pedig egyik sem releváns, 410-es választ ad. Ez a döntési szabály a látogatónak is jobb, mert oda kerül, ahol a keresett dolog legközelebbi megfelelője van.

Ellenőrzőlista

  1. Minden végleges változás 301-et (vagy 308-at) használ, nem 302-t.
  2. Minden régi cím egyetlen lépésben a végső célra mutat.
  3. A cél 200-as, indexelhető, releváns lap.
  4. Nincs tömeges átirányítás a kezdőlapra.
  5. A belső linkek, a sitemap és a canonical az új címeket használják.
  6. Költözésnél van teljes átirányítási térkép, és minden sora ellenőrizve.
  7. Az átirányítások hosszú távon, legalább a Google által javasolt ideig fennmaradnak.
  8. A Search Console-ban nincsenek fontos lapok váratlanul az átirányított csoportban.

Kapcsolódó részletes útmutatók

Csináltassuk meg helyetted

Ha ez sok, mi elvégezzük. Egy munkanapon belül konkrét ajánlatot kapsz.

Ajánlatot kérek