Często popełnianym błędem na wielu stronach jest brak ustawienia odpowiedniego przekierowania jeśli chodzi o adres www i bez www. Powoduje to, ze nasza strona jest widoczna pod dwoma różnymi adresami. Co więcej może się nawet w ramach domeny oraz „subdomeny” z www indeksować jednocześnie. Powoduje to niepotrzebną indeksację treści.
Nim jednak pokaże Ci jak wykonać takie przekierowanie za pomocą pliku .htaccess musisz zdecydować się, który adres chcesz indeksować. Nie ma to absolutnie żadnego wpływu na pozycjonowanie to czy to będzie wersja z www czy bez www. Kiedy już zdecydujesz wybierz jeden z wariantów wybierz odpowiedni dla Ciebie przykład i w miejsce nazwadomeny.pl, wstaw swój adres.
1. Przekierowanie 301 w htaccess bez www na www
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^nazwadomeny.pl$ RewriteRule ^(.*) http://www.nazwadomeny.pl/$1 [QSA,L,R=301]
2. Przekierowanie 301 w htaccess z www na bez www
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^www.nazwadomeny.pl$ RewriteRule ^(.*) http://nazwadomeny.pl/$1 [QSA,L,R=301]
Jeśli wszystko pójdzie dobrze wchodząc na dany adres, którego nie chcesz indeksować w oknie przeglądarki powinien zmienić się na nowy.
Tego mi było potrzeba. Dzieki wielkie. Już u siebie przestawiłem.
a co jeśli mamy poddomeny?
np. sub1.domena.com chcemy zmienić na http://www.sub1.domena.com
Dodam, że poddomen jest sporo więc przydałby się trik uniwersalny
Właśnie tego szukałem. Wielkie dzięki.
Jaka jest korzyść z trzymania wersji adresu z www? Co to w ogóle daje? www to dodatkowe literki do podania…
Kiedyś to może działało na ludzi – jakoś – psychologicznie chyba 🙂
Sam fakt podania nazwy z www sugeruje stronę internetową – chyba o to chodzi 😛
Do przekierowania tych adresów można również użyć pola CMANE w strefie DNS. Efekt ten sam.
Pozdrawiam 🙂
To jest umowne. Nie ma w cale różnicy czy domena będzie z www czy bez www. Przynajmniej ja tak uważam. Jednak jeśli nie zdecydujesz się na którąś z wersji – Twoja strona może indeksować się w ramach www. i bez www, przez co mogą powstać kopie strony w serpach.
To przekierowanie dobrze przekierowuje strony z www na te bez www
Jednak jest pewien problem
Jesli mam forum jako subdomena, czyli: forum.mojadomena.pl
to po wejściu w to forum też przekierowuje na mojadomena.pl
Jak rozwiazać taki przypadek?
Musiałbym wiedzieć jak wygląda struktura katalogów na Twoim FTP, ponieważ może mieć to związek z istnieniem katalogu subdomeny wewnątrz głównego katalogu całej domeny. Także proszę o info odnośnie hostingu gdzie utrzymujesz swoją stronę 🙂
Szymon,
fajny post. A jak wygładałby plik htaccess w sytacji gdy mam http://www.domena.pl/index.php i właściwie pojawiają się aż 4 strony:
http://www.domena.pl
domena.pl
http://www.domena.pl/index.php
domena.pl/index.php
Jak to rozwiązać?
To zależy pod jakim adresem chcesz mieć widoczna swoja strone htaccess wtedy wyglada odmiennie. Polecam wariant z www 🙂 Daj znać i zrobimy przykład 🙂
Dzięki wielkie! Dopiero dzisiaj zauważyłem, że na jednej z moich stron występuje problem z podwójnym indeksowaniem. Lepiej późno niż wcale 🙂
Szymon, zdradzisz jakiej wtyczki używasz do pokazywania kodu? Pierwsze spotkałem tą. Widziałem już różne, a ta mi się spodobała 🙂
Wtyczka to: Crayon Syntax Highlighter – niestety po aktualizacji przełączył mi się templejt, bo miałem wszystko na ciemnym tle, normalnie tak jak pracuje.. Obecnie też nie jest źle 🙂
Dzięki Szymon, właśnie tej wtyczki szukałem. BTW. Jak rozwija się Twój hosting? 🙂
Ma się dobrze, uruchomiliśmy nową markę: https://www.microhost.pl/
Krótko, zwięźle i na temat. To lubię 🙂 Właśnie zmodyfikowałem swój htaccess i wszystko pięknie działa. Dzięki za świetną poradę.
Dzięki! Na pewno nie raz się przydadzą te informacje. ;]
Dzięki, właśnie szukałem tego kodu!
A proszę mi powiedzieć jak przekierować stronę z bez www na www na darmowej domenie np. moja.hosting.pl ? plik .htaccess nie działa 🙂 posiadam taka stronę i niestety muszę to jakoś obejść bez pliku .haccess
Mam prośbę o pomoc. Problem jest z przekierowaniami typu:
strona.pl/link na http://www.strona.pl/link, efekt końcowy jest taki http://www.strona.pllink/ i wyskakuje dns error
co zrobiłem nie tak?
Wklej proszę treść Twojej regułki i coś zaradzimy 🙂
Prawdopodobnie gdzieś nie ustawiłaś slasha 😉
RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]