Wprowadzenie:
Przekierowania są często stosowane w celu przeniesienia ruchu z jednego adresu URL na inny. Dwa popularne rodzaje przekierowań to przekierowanie 301 (Permanent Redirect) i przekierowanie 302 (Temporary Redirect). W tym artykule przyjrzymy się różnicom między tymi dwoma rodzajami przekierowań oraz przedstawimy przykłady plików .htaccess, które można użyć do implementacji przekierowań na serwerze Apache.
- Przekierowanie 301 (Permanent Redirect): Przekierowanie 301 oznacza, że zasób został przeniesiony na stałe na nowy adres URL. Główne cechy przekierowania 301 to:
-
- Przeglądarki oraz wyszukiwarki będą zapamiętywać nowy adres i automatycznie przekierowywać użytkowników przy kolejnych odwołaniach do starego adresu.
- Przekierowanie 301 jest zalecane w przypadku zmiany stałych adresów URL, np. w wyniku zmiany struktury witryny lub przeniesienia jej na inny domenę.
Przykład pliku .htaccess dla przekierowania 301:
Redirect 301 /stary-adres.html http://www.twojadomena.pl/nowy-adres.html
- Przekierowanie 302 (Temporary Redirect): Przekierowanie 302 oznacza tymczasowe przekierowanie zasobu na inny adres URL. Główne cechy przekierowania 302 to:
-
- Informuje przeglądarki i wyszukiwarki, że zasób jest tymczasowo dostępny pod innym adresem, ale powróci do pierwotnego adresu w przyszłości.
- Przeglądarki i wyszukiwarki nie zapamiętują adresu tymczasowego i nadal będą odwoływać się do oryginalnego adresu.
Przykład pliku .htaccess dla przekierowania 302:
Redirect 302 /stary-adres.html http://www.twojadomena.pl/nowy-adres.html
- Przykłady innych plików .htaccess: Plik .htaccess jest plikiem konfiguracyjnym serwera Apache, który umożliwia dostosowanie wielu aspektów serwera, w tym przekierowań. Oto kilka innych przykładów zastosowania pliku .htaccess:
-
- Przekierowanie wszystkich żądań na stronę główną:
RewriteEngine On RewriteRule ^(.*)$ http://www.twojadomena.pl/ [L,R=301]
-
- Przekierowanie na inny adres URL z dodaniem parametrów:
RewriteEngine On RewriteRule ^stary-adres.html$ http://www.twojadomena.pl/nowy-adres.html?parametr=wartosc [L,R=301]
-
- Przekierowanie z bezwzględnego adresu na względny:
RewriteEngine On RewriteRule ^twojadomena\.pl/(.*)$ /$1 [R=301,L]
Podsumowanie:
Przekierowanie 301 i przekierowanie 302 to dwa różne rodzaje przekierowań stosowane w celu przekierowania ruchu z jednego adresu URL na inny. Przekierowanie 301 jest permanentne i zalecane do stałych zmian adresów URL, podczas gdy przekierowanie 302 jest tymczasowe i informuje, że zasób jest dostępny pod innym adresem tylko tymczasowo. Pliki .htaccess są przydatnym narzędziem do implementacji przekierowań na serwerze Apache. Przykłady przedstawione w artykule mogą służyć jako wytyczne przy tworzeniu własnych plików .htaccess dla przekierowań na stronie. Pamiętaj, że dobór odpowiedniego rodzaju przekierowania zależy od celu i charakteru zmiany adresu URL.