Pozycjonowanie poradnik, jak wypozycjonować stronę? Twoja baza wiedzy o pozycjonowaniu i optymalizacji stron internetowych

Jak wykonać przekierowanie 301 w różnych przypadkach?

29 marzec 2010 09:36 | Przekierowanie 301 | Autor: Bartłomiej Damek
Przekierowanie 301, htaccess

Przekierowania 301, a w zasadzie regułki do przekierowania umieszcza się w pliku .htaccess w głównym katalogu na serwerze, gdzie wgrane są pliki startowe strony (najczęściej w domains/"nazwa_domeny"/public_html/)

Poniżej przykłady przekierowań 301:

1. Przekierowanie 301 ze strony domena.pl na stronę www.domena.pl:

W pliku .htaccess zaraz po RewriteEngine on (jeśli nie ma takiego wpisu to należy go umieścić) wpisz następującą regułkę, zamieniając przykład www.domena.pl na adres strony właściwej.
Tak powinno to wyglądać w pliku .htaccess:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ http://www.domena.pl/$1 [L,R=301]

2. Przekierowanie 301 z adresu www.domena.pl/index.php na www.domena.pl

W pliku .htaccess zaraz po RewriteEngine on (jeśli nie ma takiego wpisu to należy go umieścić) wpisz następującą regułkę, zamieniając przykład www.domena.pl na adres strony właściwej.
Tak powinno to wyglądać w pliku .htaccess:

RewriteEngine on
RewriteCond %{REQUEST_URI} ^\/index.php$
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://www.domena.pl/ [L,R=301]

W takim przypadku w miejsce /index.php możemy wpisać dowolną stronę, z której ma nastąpić przekierowanie na inny adres

3. Czy można łączyć różne regułki przekierowania w jednym wpisie .htaccess?

Tak, nie ma najmniejszego problemu, w takim przypadku wpisujesz zaraz po RewriteEngine On regułki, które muszą być wykonane czyli wg naszych przykładów wpis wyglądałby następująco:

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ http://www.domena.pl/$1 [L,R=301]

RewriteCond %{REQUEST_URI} ^\/index.php$
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://www.domena.pl/ [L,R=301]

 

4. Przekierowanie wszystkich podstron serwisu na domenę główną:

RewriteCond %{REQUEST_URI} ^(.*)
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://www.domena.pl/ [L,R=301]


5. Całkowite przekierowanie z domeny A na domenę B:

W pliku .htaccess zaraz po RewriteEngine on (jeśli nie ma takiego wpisu to należy go umieścić) wpisz następującą regułkę, zamieniając przykład www.domena.pl na adres strony właściwej.
Tak powinno to wyglądać w pliku .htaccess:

RewriteEngine On
RewriteRule ^(.*)$ http://www.domena.pl/$1 [R=301,L]

Ten przykład został celowo umieszczony na końcu, gdyż jego wykonanie powoduje to iż zbyteczne jest wprowadzanie innych regułek do pliku .htaccess

 

Komentarze
Komentarze
Amer, 2010-06-28 00:14
Właśnie tego szukałem, nawet na PIO ciężko było znależć
Marek, 2010-09-12 10:56
dzięki wielkie za opublikowaną opcje z przekierowaniem z index -> normal bo to co ja kombinowałem to naprawdę można się załamać. Pozdrawiam
bukmacherzy, 2010-12-15 18:26
Wlasnie tego szukalem. Dzieki
Romi, 2010-12-20 00:13
Chciałbym wykonać redirect ze strony B na A, zastosowałem ostatnią piątą regułkę. Działa, ale przekierowuje mi wszystkie strony/artykuły na drugą stronę, np: www.domenaB.pl/twoj-artykul na www.domenaA.pl/twoj-artykul, gdzie rzecz jasna żadnej treści, artykułu nie ma. Czyli pusta strona "Nic nie znaleziono - 404". Czyli moc, linki kierowane są w puste strony nie mające odpowiednika na stronie na którą zostało zrobione przekierowanie. Na dodatek ta druga strona, na którą jest przekierowanie tzn. WordPress ma inny schemat linków w pasku adresu... Jak to zrobić prawidłowo, wydaje mi się, że pozycjonerzy to jakoś inaczej robią
Zupa, 2011-01-07 23:10
W sieci jest dużo gotowych narzędzi. Ja znalazłem takie: http://htaccess.lapti.pl.
Adaś, 2011-01-11 19:22
Ciekawa strona Amer - sprawdzę i dam znać czy faktycznie to działa, jak tak to być może to opiszę na Księdze :)
Krzyś, 2011-02-02 16:42
Tego właśnie szukałem.
Antek, 2011-02-19 08:25
Szkoda że darmowych blogów nie można przekierować, czy jest na to też patent.
ciekawy, 2011-04-29 09:40
pytanie a jak zrobic przekierowanie wszystkich z www.domena.pl/index.php?page=1 na www.domena.pl - (tj. przekierowanie wszystkiego po index.php "?dowolnyciag")
folder, 2011-05-09 11:42
1. próbowałem zastosować jedną z opisanych metod do przekierowania typu domena.pl/folder/strona.html ale nie działa. Była to druga reguła dodana po przekierowaniu z "bez www" na "www": RewriteCond %{HTTP_HOST} ^domena.pl$ RewriteRule ^(.*)$ http://www.domena.pl/$1 [R=301,L] 2. czy możesz opisać składnię reguł np. [NC] - moje główne opisane wyżej przekierowanie działa bez [NC] a drugie: RewriteCond %{REQUEST_URI} ^/nazwa$ RewriteRule ^(.*)$ http://nazwa.domena.pl/ [L,R=301] działa bez linijki RewriteCond %{QUERY_STRING} ^$ Podstawowe jednak pytanie to jak przekierować WSZYSTKO co znajduje się w folderze domena.pl/nazwa na nazwa.domena.pl i to niezależnie czy ktoś wpisze bez www czy z www albo czy zakończy ukośnikiem czy nie (z ukośnikiem nie działa) Dzięki za pomoc.
janusz, 2011-10-20 23:13
Dzięki za pomoc
Jasiek, 2011-10-24 17:42
Witam, Wcześniej na mojej stronie miałem różne adresy rss: www.mojadomena.pl/index.php?format=feed&type=rss www.mojadomena.pl/feed/rss.html www.mojadomena.pl/index.php?format=feed&type=atom Teraz mam: www.mojadomena.pl/feed Chciałbym stare, nieaktualne już adresy przekierować na ten jeden aktualny. Czy mógłbym to zroboć za pomocą przekierowania 301 w pliku .htaccess? Np. tak: rewritecond %{http_host} ^www.mojadomena.pl/index.php?format=feed&type=rss [nc] rewritecond %{http_host} ^www.mojadomena.pl/feed/rss.html [nc] rewritecond %{http_host} ^www.mojadomena.pl/index.php?format=feed&type=atom [nc] rewriterule ^(.*)$ http://www.mojadomena.pl/feed/$1 [r=301,nc] Czy będzie to poprawny kod? Czy subskrybenci kanałów ze starym adresem będą otrzymywać informacje z nowego kanału?
  • Zostaw coś po sobie !
    • Podana przez Ciebie nazwa uzytkownika jest nieporawna.
    • Podany przez Ciebie adres e-mail jest niepoprawny.
    • Podany adres www jest niepoprawny
    • Podana przez Ciebie treśc komentarza jest niepoprawna.Pole nie może pozostać puste. Wprowadź np.:Ten produkt jest super.
Pozycjonowanie - Twoja baza wiedzy o pozycjonowaniu i optymalizacji stron internetowych
Presell Pages - Niezwykle wydajny, zamknięty system Presell Pages
Artykuły do pozycjonowania - wysoka jakość, niska cena…
Katalogowanie - Wartościowe katalogowanie za grosze
Darmowe Pozycjonowanie - Jak sprawić, żeby strona firmowa przynosiła zysk?

Korzystanie z serwisu oznacza akceptację polityki prywatności.copyright: KsiegaPozycjonera.pl. Wszelkie prawa zastrzeżone.


www.optymalizacja.edu.pl
Zamknij