Przekierowanie URL
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
[edytuj | edytuj kod]Przekierowanie za pomocą metataga Refresh
[edytuj | edytuj kod]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
[edytuj | edytuj kod]<script language="JavaScript" type="text/javascript">
location.href="example.php";
</script>
Przekierowanie za pomocą ramek
[edytuj | edytuj kod]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
[edytuj | edytuj kod]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łe302 Found
- tymczasowe przekierowanie adresu URL303 See Other
- przekierowanie metodą POST304 Not Modified
- nie zmieniono od ostatniej wizyty305 Use Proxy
- dostęp przez proxy307 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
[edytuj | edytuj kod]Takie przekierowanie (dokładnie z kodem 301) można także zrobić za pomocą .htaccess:
Redirect 301 / http://www.example.com/
Przypisy
[edytuj | edytuj kod]- ↑ HTTP/1.1: Status Code Definitions [online], www.w3.org [dostęp 2017-11-26] .