Zabieg „pozycjonerski” związany z przekierowaniem (oraz przeniesieniem siły pozycjonującej) starej domeny na nowy adres jest prostą operacją, choć i tak potrafi czasem przysporzyć nie lada kłopotów – dlatego postaramy się wyjaśnić jak to zrobić.
Przekierowanie 301 służy do “przeniesienia” jednego adresu internetowego na drugi. Taki sposób jest bardzo często wykorzystywany przez webmasterów i pozycjonerów – to działanie poprawnie interpretowane zarówno przez przeglądarki jak i roboty wyszukiwarek internetowych. Najczęściej przekierowanie 301 wykorzystuje się podczas przenoszenia serwisu z jednej domeny na drugą. Dzięki temu nie tracimy linków prowadzących do starej domeny, robot wyszukiwarki jest przekierowywany na nową domenę, ponadto nowy adres zyskuje całą “siłę” adresu poprzedniego, co ma kluczowe znaczenie w przypadku pozycjonowania stron. Można także używać kilku adresów URL dla jednej strony internetowej, co daje możliwość pozycjonowania każdej domeny osobno,a uzyskaną przez nie moc przekazywać stronie nadrzędnej (adresowi końcowemu). Bardzo często przekierowanie 301 stosowane jest do ustawiania przekierowania adresu z www na bez www i odwrotnie.
Zapis „301” definiowany jest jako „Moved Permanently”, czyli „przeniesiony na stałe”. Przeciwieństwem jest „302”, gdzie przeglądarki informowane są o tymczasowym przeniesieniu – używa się go na przykład w czasie prac modernizacyjnych na witrynie, a gdy się zakończą, pozwala na powrót do pierwotnego stanu.
Przekierowanie w pliku .htaccess
Plik .htaccess znajduje się w katalogu głównym na serwerze (jeżeli nie – powinniśmy stworzyć go w tym miejscu i umieścić w nim poniższy kod)
- Przekierowanie starego adresu na nowy (uwzględnia stary adres z www i bez www)
- Przekierowanie z www na bez www
- Przekierowanie z adresu bez www na adres z www
- Przekierowanie domeny głównej na subdomenę
RewriteEngine On
RewriteCond %{HTTP_HOST} ^stary-adres.com [OR]
RewriteCond %{HTTP_HOST} ^www.stary-adres.com
RewriteRule ^(.*)$ http://www.nowy-adres.com/$1 [R=301,L]
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.adres.com$
RewriteRule ^(.*) http://adres.com/$1 [QSA,L,R=301]]
RewriteEngine On
RewriteCond %{HTTP_HOST} ^adres.com$
RewriteRule ^(.*) http://www.adres.com/$1 [QSA,L,R=301]
RewriteEngine On
RewriteCond %{HTTP_HOST} ^adres.com
RewriteRule ^(.*)$ http://subdomena.adres.com/$1 [R=301,L]
Przekierowanie w PHP
-
< ?php
header(’HTTP/1.1 301 Moved Permanently’);
header(’Location: http://www.adres.com’.$_SERVER['REQUEST_URI']);
header(’Connection: close’);
?>