Przekierowanie URL

Ten artykuł od 2021-06 zawiera treści, przy których brakuje odnośników do źródeł.
Należy dodać przypisy do treści niemających odnośników do źródeł. Dodanie listy źródeł bibliograficznych jest problematyczne, ponieważ nie wiadomo, które treści one uźródławiają.
Sprawdź w źródłach: Encyklopedia PWN • Google Books • Google Scholar • Federacja Bibliotek Cyfrowych • BazHum • BazTech • RCIN • Internet Archive (texts / inlibrary)
Dokładniejsze informacje o tym, co należy poprawić, być może znajdują się w dyskusji tego artykułu.
Po wyeliminowaniu niedoskonałości należy usunąć szablon {{Dopracować}} z tego artykułu.

Przekierowanie URL – technika polegająca na automatycznym poinformowaniu przeglądarki WWW, że ma odświeżyć stronę o innym adresie po wpisaniu danego adresu URL. Technika stosowana przy skracaniu adresów internetowych oraz przenoszeniu strony pod inny adres tak, by stary adres dalej działał.

Techniki

Przekierowanie za pomocą metataga Refresh

Dokument HTML prezentujący tę metodę:

<html><head>
  <meta http-equiv="Refresh" content="0;url=http://www.example.com/" />
</head><body>
  <p>Przejdź pod ten <a href="http://www.example.com/">link</a>!</p>
</body></html>
  • Liczba 0 to czas w sekundach, jaki strona ma się wyświetlać. Można ją dowolnie zmienić.
  • Prośba o przejście pod podany link jest tylko dla właścicieli starszych przeglądarek, które nie obsługują tego metataga.
  • Jest to prosta metoda, ponieważ wymaga tylko dostępu do dokumentu HTML, nie trzeba znać PHP.

Przekierowanie w JavaScript

<script language="JavaScript" type="text/javascript">
location.href="example.php";
</script>

Przekierowanie za pomocą ramek

Przykład:

<frameset rows="100%">
  <frame src="http://www.example.com/">
</frameset>
<noframes>
  <body>Please follow <a href="http://www.example.com/">link</a>!</body>
</noframes>

Dzięki takiemu użyciu wyświetli się strona spod nowego adresu, ale w pasku przeglądarki adres się nie zmieni.

Kody statusu strony 3xx

Protokół HTTP definiuje następujące przekierowania:[1]

  • 300 Multiple Choices — kilka możliwości, zwykle ta sama strona w różnych językach.
  • 301 Moved Permanently — przekierowanie na stałe
  • 302 Found - tymczasowe przekierowanie adresu URL
  • 303 See Other - przekierowanie metodą POST
  • 304 Not Modified - nie zmieniono od ostatniej wizyty
  • 305 Use Proxy - dostęp przez proxy
  • 307 Temporary Redirect — czasowe przekierowanie

By użyć przekierowania Serwer musi wygenerować taki nagłówek:

HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/
Content-Type: text/html
Content-Length: 174

Można go uzyskać przy użyciu np. PHP, tworząc plik zawierający:

<?php
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.example.org/');
header('Connection: close');
exit();
?>

Przekierowanie 301 jest bardzo ważne w SEO, ponieważ przekierowuje ono 'moc' linków kierującą na starą stronę na nową stronę. Dzięki temu pozycja w Google nie spada po przeniesieniu strony pod nowy adres.

Przekierowanie za pomocą .htaccess

Takie przekierowanie (dokładnie z kodem 301) można także zrobić za pomocą .htaccess:

Redirect 301 / http://www.example.com/

Przypisy

  1. HTTP/1.1: Status Code Definitions [online], www.w3.org [dostęp 2017-11-26] .