Dziś zajmiemy się istotnym z punktu widzenia wyszukiwarek internetowych i pozycjonowania zagadnieniem, jakim są przekierowania stron WWW. Liczba stron internetowych rośnie coraz szybciej. W chwili obecnej po wpisaniu w google.pl hasła www otrzymujemy prawie 20 miliardów wyników! Należy jednak pamiętać, że wiele stron nie używa przedrostka www w adresie. Wiele adresów w sieci prowadzi do stron, które już dawno nie istnieją. Inne strony zmieniły adres lub serwer na którym były umieszczone. Co zrobić z adresem, które nie kieruje użytkownika do właściwej strony w sieci? Najlepiej przekierować go na adres, pod którym znajdują się szukane treści.
Innym powodem przekierowania może być ta sama lub bardzo podobna treść w obrębie tego samego lub różnych serwisów. Jeżeli te same treści występują na różnych stronach, to warto rozważyć przekierowanie jednej lub kilku strona z tą samą treścią na jeden adres. Mamy w ten sposób gwarancję, że wszyscy internauci przeglądający daną treść są na stronie, na której chcemy aby się znajdowali. Unikamy w ten sposób tzw. „duplicate content” czyli dublowania treści, które może zaszkodzić domenie w wyszukiwarkach. internetowych.
Jest wiele sposobów i typów przekierowań. Najbardziej popularne i zalecane jest przekierowanie 301: Moved Permanently .Oznacza ono, że przekierowana strona została przeniesiona na stałe pod nowy adres. Przekierowanie to przenosi moc i historię ze starego adresu na nowy.
Występują również przekierowania tymczasowe (np. 302, 307), jednak ich stosowanie nie jest zalecane.
Przekierowania najlepiej ustawić w pliku .htaccess, który znajduje się na serwerze, z którego przekierowujemy stronę i zawiera ustawienia serwera. Przykład takie przekierowania przedstawiamy poniżej:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^przykladowa-domena.pl(.*) [NC]
RewriteRule ^(.*)$ http://www.przykladowa-domena.pl /$1 [R=301,L]
Umieszczenie tego kodu w pliku .htaccess na serwerze spowoduje, że po wejściu użytkownika lub robota wyszukiwarki na stronę przykladowa-domena.pl, zostaną oni przekierowani na stronę "www.przykladowa-domena.pl". Jest to więc przekierowanie 301 strony bez „www” na stronę z „www”. Analogicznie możemy przekierować stronę z „www” na bez „www”:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.przykladowa-domena.pl(.*) [NC]
RewriteRule ^(.*)$ http://przykladowa-domena.pl/$1 [R=301,L]
Nie wszystkie serwery jednak obsługują plik .htaccess. Jeżeli obsługują język php, to możemy w takim wypadku wykonać przekierowanie w php. Wygląda ono tak:
Przekierowanie bez „www” na z „www”:
<?php
if(substr($_SERVER['HTTP_HOST'], 0, 3)!='www')
{
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.przykladowa-domena.pl".$_SERVER['REQUEST_URI']);
header("Connection: close");
exit;
}
?>
Przekierowanie z „www” na bez „www”:
<?php
if(substr($_SERVER['HTTP_HOST'], 0, 3)=='www')
{
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://przykladowa-domena.pl".$_SERVER['REQUEST_URI']);
header("Connection: close");
exit;
}
?>
Przekierowanie w pliku .htaccess oraz w php przekierowuje na nową stronę zarówno użytkownika jak i roboty indeksujące. A co jeżeli chcemy przekierować tylko roboty w celu uniknięcia „duplicate content”? Wtedy możemy zastosować atrybut canonical, który ustawiamy w nagłówku strony, którą chcemy przekierować. Do niedawna atrybut ten działał jedynie w obrębie jednej domeny, nie było więc możliwości przekierowania robotów na inną stronę w sieci. 15-go grudnia ubiegłego roku na blogu Google dla webmasterów pojawiła się informacja, że atrybut canonical działa również pomiędzy różnymi domenami w sieci Internet. Aby przekierować moc strony oraz roboty indeksujące na inną stronę, to w sekcji head strony przekierowywanej umieszczamy następujący kod:
<link rel="canonical" href="http://www.przykladowa-domena.pl"/>
Nowa funkcjonalność atrybutu canonical może ułatwić życie webmasterom mającym ograniczone możliwości konfiguracji serwera www. Jeżeli przekierowanie w .htaccess lub w php nie jest możliwe, to możemy ustawić przekierowanie w nagłówku strony i uniknąć tym samy dublowania treści w sieci.
Autor: Łukasz Miernikiewicz