Címke: átirányítás

Honlap áthelyezése teljes tartalommal új helyre

Néha úgy adódik, hogy új helyre kell költöztetni régi honlapunkat. Ilyenkor szeretnénk, ha a régi weboldalunkra érkező látogatók rátaláljanak az új címre, sőt, a régi aloldalakra érkezve (pl. keresőkből) az új honlap megfelelő aloldalára érkezzenek a látogatók.

Frissítés: Az új Google Webmestereszközök lehetőséget biztosít arra is, hogy saját magad jelezd a Google felé az áthelyezés tényét. Ha betartod az áthelyezés irányelveit, valamint beállítottad a 301-es átirányítást, akkor a Webmestereszközök “Webhely-konfiguráció” -> “Webhely címének módosítása” felületén tudod az áthelyezést tudatni a keresővel.

Technikailag az átirányításra két fő eset lehetséges:

Az egyik, amikor a teljes weboldal tartalmát szeretnénk átirányítani az újra, nem törődve az aloldalakkal. Három lehetőséget mutatunk be itt, természetesen van több is, de ezek a leggyakoribb megoldások. Az alábbiak feltételezik, hogy minden más tartalmat, aloldalt eltüntettél a webhelyedről, csak egy index.php/.html található a domainen.

  • HTML-es megoldás (tedd az alábbi kódot a régi weboldalad index fájljának elejére):
    <meta http-equiv=refresh content=”0; url=http://az-uj-weboldal-cime.hu”>
  • PHP-s megoldás (ugyancsak a régi weboldal index.php elejére):
    <?php
    Header( “HTTP/1.1 301 Moved Permanently” );
    Header( “Location: http://
    az-uj-weboldal-cime.hu” );
    ?>
  • .htaccess megoldás (tedd a gyökérben lévő .htaccess fájlba, Apache esetén):
    Options +FollowSymLinks
    RewriteEngine on
    RewriteRule (.*) http://az-uj-weboldal-cime.hu/$1 [R=301,L]

A másik eset, amikor szeretnénk, hogy a régi aloldalak az újnak megfelelő aloldalakra linkeljenek. Természetesen ezt csak akkor lehet megoldani, ha a régi és az új címben is felfedezhető valamiféle hasonlatosság, olyan, amelyre lehet egy sablont húzni:

  • Ha minden egyes régi aloldal fejlécébe az első módszer első két megoldása közül valamelyiket választjuk, és pl. így módosítjuk az ott bemutatott URL-t: http://az-uj-weboldal-cime.hu/magunkrol.html, akkor az egy hosszadalmas (az oldalak számától függő), de tuti biztos megoldás lehet.
  • A PHP-s megoldás:
    <?php
    Header( “HTTP/1.1 301 Moved Permanently” );
    Header( “Location:
    http://az-uj-weboldal-cime.hu“.$_SERVER[‘REQUEST_URI’].””);
    ?>

    Ezt a kódot a régi weboldal fejlécébe kell betenni. Az fog történni, hogy ha beírják pl. a http://a-regi-weboldal-cime.hu/magamrol.html címet, akkor az át fog ugrani a http://az-uj-weboldal-cime.hu/magamrol.html címre, de ha az adott aloldal a kapcsolat.html, akkor szintén az új weboldal kapcsolat.html oldalára fog vinni.
  • .htaccess megoldás (tedd a gyökérben lévő .htaccess fájlba, Apache esetén):
    Options +FollowSymLinks
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^a-regi-weboldal-cime\.hu
    RewriteRule ^(.*)$ http://az-uj-weboldal-cime.hu/$1 [R=permanent,L]

    Ha pl. a régi weboldalunkon http://a-regi-weboldal-cime.hu/kapcsolat.php volt a cím, akkor azt automatikusan a http://az-uj-weboldal-cime.hu/kapcsolat.php oldalra irányítja.

Egy külön eset, amikor nem szeretnénk a teljes oldalt áthelyezni, de a www-s változatról szeretnénk a www nélküli címre irányítani a felhasználót:

  • PHP-s megoldás:
    <?php
    if($_SERVER[‘SERVER_NAME’]==”
    www.weboldal-cime.hu”){
    header(‘HTTP/1.1 301 Moved Permanently’);
    header(‘Location: http://
    weboldal-cime.hu‘ . $_SERVER[‘REQUEST_URI’]);
    }
    ?>

Érdemes azonban vigyázni a sok átirányítással, nehogy félrevezetőek legyenek. Továbbá minél hamarabb gondoskodjuk a régi weboldal tartalmainak eltüntetéséről. A fent bemutatott megoldások természetesen korántsem teljesek, de az esetek nagy részére megoldást nyújtanak. Ha vannak még jó ötletek, szívesen bővítem azokkal a posztot.