Jak zrobić przekierowanie 301 w .htaccess i PHP?

Przekierowanie 301 czyli tzw. Moved Permanently, to coś co każdy mający stronę internetową powinien znać.

Kiedy stosujemy przekierowanie 301

Umożliwia ono łatwe zakomunikowanie BOTom wyszukiwarek oraz przeglądarkom, że stronę www przeniesiono na inną domenę, że zmieniono jej adres z takiego z przedrostkiem 'www’ na taki bez przedrostka, że dodano do domeny SSL i jej adres należy poprzedzić protokołem HTTPS zamiast HTTP lub że adres podstrony zmienił się z twoja-domena.pl/adres.html na twoja-domena/nowy-adres.html To jedne z najważniejszych zastosowań przekierowania 301.

Jak wykonać przekierowanie 301 w pliku .htaccess

Na pierwszy ogień przygotujemy przekierowanie adresu domeny w wersji z przedrostkiem 'www’ na adres bez 'www’. Każda strona powinna funkcjonować tylko pod jednym adresem. Jeśli identyczna treść widoczna będzie pod dwoma różnymi adresami to Google w najlepszym wypadku sam wybierze sobie jeden z adresów jako główny, a w gorszym przypadku uzna treść na obu jako duplicate content.

Wszystkie poniższe wpisy dodajemy w pliku .htaccess, który znajduje się w katalogu głównym domeny.

Jeżeli w katalogu głównym takiego pliku nie ma to musimy go utworzyć i na samym wstępie umieścić taką oto treść:

Options +FollowSymlinks
RewriteEngine on

Przekierowanie 301 z domeny z przedrostkiem 'www’ na domenę bez 'www’.

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

Przekierowanie z domeny bez 'www’ na wersję z 'www’.

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

Gdy domena funkcjonowała bez zabezpieczenia jej certyfikatem SSL, a pokusimy się w końcu na zakup certyfikatu to wszystkie wejścia na naszą domenę protokołem HTTP musimy przekierować na HTTPS.

Przekierowanie z HTTP na HTTPS w pliku .htaccess

RewriteCond %{HTTPS} on
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Możemy też zrobić przekierowanie jednego pliku na drugi, w obrębie tej samej domeny:

RewriteRule stary_plik.html$ nowy_plik.html [R=301]

W ten sposób przekierujemy wszystkie wejścia z adresu Twoja-domena.pl/stary_plik.html na adres Twoja-domena.pl/nowy_plik.html

301 Moved Permanently w pliku PHP

Gdy nie możemy skorzystać z dobrodziejstw pliku .htaccess możemy skorzystać z przekierowania w pliku php:

<?php
header("Location: https://Twoja-domena.pl",TRUE,301);
exit;
?>

Lub

<?
http_response_code(301);
header("Location: https://Twoja-domena.pl"); 
exit;
?>

W jakim celu robimy przekierowanie 301?

Oczywista odpowiedź nasuwa się sama: aby przekierować wszystkich wchodzących na stary adres na nową domenę.

301 Moved Permanently informuje roboty wyszukiwarek, w tym m.in. BOTy Google, o tym, że strona została przeniesiona na nowy adres (permanentnie, trwale). W ten sposób moc linków i autorytet starej domeny przenoszony jest na nowy adres.

Related Posts

jak zablokować roboty ahrefs i majestic

Jak zablokować dostęp do strony botom Ahrefs i Majestic?

Tematy blokowania dostępu do strony internetowej były już na blogu poruszane. Dowiedzieliśmy się już Jak zablokować dostęp do strony niechcianym botom i/lub spamerom oraz Jak zablokować dostęp…

zabezpieczenie strony internetowej przed spamerami

Jak zabezpieczyć stronę przez robotami spamerów?

Wiemy już jak zabezpieczyć formularz kontaktowy przed spamem. Teraz pora dowiedzieć się, jak zabezpieczyć stronę przed robotami spamerów czy niechcianych wyszukiwarek, aby nie drenowały nam serwera lub…

jak napisać formularz kontaktowy z reCAPTCHA

Jak zrobić formularz kontaktowy zabezpieczony reCAPTCHA?

Napisanie formularza kontaktowego w PHP nie jest wcale takie trudne. Jeśli nie wiesz jak napisać formularz kontaktowy lub chcesz zabezpieczyć obrazkiem ReCaptcha swój, istniejący już formularz, to…

zabezpieczenie wordpressa

Jak zabezpieczyć WordPress’a i wp-login.php?

Wordpress to skrypt sam z siebie dość zasobożerny i może obciążyć hosting współdzielony. Zwłaszcza, jeśli udoskonalimy go dodatkowymi wtyczkami. Jest on też jednym z najpopularniejszych skryptów, na których stoi setki milionów stron. Dlatego często jest atakowany przez różnego typu BOTy, które metodą brute force próbują zgadnąć hasło logowania do panelu admina.

Robot Sztucznej Inteligencji (AI)

Jak zablokować dostęp do strony BOTowi ChatGPT (OpenAI)?

Coraz powszechniejsze staje się „pożyczanie” kontentu naszych stron i niewiele jesteśmy w stanie z tym zrobić. Google cytuje ich zawartość w wynikach wyszukiwania, udzielając odpowiedzi na pytania zadane przez użytkowników wyszukiwarki. W ten sposób tracimy ruch organiczny, bo często użytkownik przeczyta treść widoczną na stronie wyników Google, a naszej strony może już nie odwiedzić.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *