Код стану 301 протоколу HTTP (HTTP 301) — в протоколі HTTP, код стану, що отримується у відповідь від сервера в ситуації, коли запитаний ресурс був на постійній основі переміщено в нове місце розташування (англ. Moved Permanently), і який вказує на те, що поточні посилання, які використовують даний URL, повинні бути оновлені. Адреса нового місця розташування ресурсу вказується в полі Location одержуваного у відповідь заголовка пакета протоколу HTTP. В RFC 2616 зазначено, що:
- якщо в клієнта є можливість редагування посилання, то йому слід оновити всі посилання на запитуваний URL;
- запит кешується;
- у разі, якщо метод запиту був не HEAD, то вміст має містити невелику гіпертекстову примітку з гіперпосиланням на новий URL;
- якщо код стану 301 був отриманий у відповідь на запит будь-якого іншого типу, крім GET або HEAD, то клієнт повинен запитати користувача про перенаправлення.
Приклади
Запит клієнта:
GET /index.php HTTP/1.1 Host: www.example.org
Відповідь сервера:
HTTP/1.1 301 Moved Permanently Location: http://www.example.org/index.asp
Приклади перенаправлення для вебсервера Apache: Використання файлу .htaccess для перенаправлення на ресурс, що працює на протоколі шифрування SSL:
RewriteEngine On RewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] RewriteCond %{HTTPS} on RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ https://%1/$1 [R=301,L] RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://example.com/$1 [R,L]
Перенаправлення з небажаних сайтів в .htaccess
RewriteEngine on RewriteCond %{HTTP_REFERER} ^http://(site.ua%7Csite2.ua%7Csite3.ua)[NC] RewriteRule \.(rar|zip)$ http://example.com/ [R,L]
Приклад використання перенаправлення в PHP:
<?php header("HTTP/1.1 301 Moved Permanently"); header("Location: http://example.com/newpage.html"); exit(); ?>
Приклади перенаправлення для вебсервера nginx: Перенаправлення з вебсторінки.
location /old/url/ { return 301 /new/url; }
Пошукові системи
Google рекомендує використовувати код стану 301 для зміни URL сторінки так, як вона показана в результатах пошуку. Яндекс також рекомендує використовувати код стану 301 перенаправлення сторінок.
З точки зору SEO, саме 301 редірект повідомляє пошуковим роботам, що потрібно об'єднати дві різні адреси в одну, де основною буде та, на яку й здійснюється перенаправлення.
Пошукові системи також рекомендують налаштовувати даний редірект з додаткових дзеркал на основне, наприклад, коли сайт одночасно доступний за адресами з www і без www або використовує захищений протокол (https), але при цьому також доступний з http.
Див. також
Примітки
- . stackoverflow.com. Архів оригіналу за 27 січня 2016. Процитовано 26 листопада 2015.
- . support.google.com. Архів оригіналу за 24 липня 2017. Процитовано 26 листопада 2015.
- . yandex.ru. Архів оригіналу за 7 квітня 2017. Процитовано 26 листопада 2015.
Посилання
- RFC 2616[1] [ 7 березня 2011 у Wayback Machine.]
- Що таке редірект і як його прописати. [ 21 листопада 2021 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Kod stanu 301 protokolu HTTP HTTP 301 v protokoli HTTP kod stanu sho otrimuyetsya u vidpovid vid servera v situaciyi koli zapitanij resurs buv na postijnij osnovi peremisheno v nove misce roztashuvannya angl Moved Permanently i yakij vkazuye na te sho potochni posilannya yaki vikoristovuyut danij URL povinni buti onovleni Adresa novogo miscya roztashuvannya resursu vkazuyetsya v poli Location oderzhuvanogo u vidpovid zagolovka paketa protokolu HTTP V RFC 2616 zaznacheno sho yaksho v kliyenta ye mozhlivist redaguvannya posilannya to jomu slid onoviti vsi posilannya na zapituvanij URL zapit keshuyetsya u razi yaksho metod zapitu buv ne HEAD to vmist maye mistiti neveliku gipertekstovu primitku z giperposilannyam na novij URL yaksho kod stanu 301 buv otrimanij u vidpovid na zapit bud yakogo inshogo tipu krim GET abo HEAD to kliyent povinen zapitati koristuvacha pro perenapravlennya PrikladiZapit kliyenta GET index php HTTP 1 1 Host www example org Vidpovid servera HTTP 1 1 301 Moved Permanently Location http www example org index asp Prikladi perenapravlennya dlya vebservera Apache Vikoristannya fajlu htaccess dlya perenapravlennya na resurs sho pracyuye na protokoli shifruvannya SSL RewriteEngine On RewriteCond HTTPS off RewriteCond HTTP HOST www NC RewriteRule http 1 1 R 301 L RewriteCond HTTPS on RewriteCond HTTP HOST www NC RewriteRule https 1 1 R 301 L RewriteEngine On RewriteCond SERVER PORT 80 RewriteRule https example com 1 R L Perenapravlennya z nebazhanih sajtiv v htaccess RewriteEngine on RewriteCond HTTP REFERER http site ua 7Csite2 ua 7Csite3 ua NC RewriteRule rar zip http example com R L Priklad vikoristannya perenapravlennya v PHP lt php header HTTP 1 1 301 Moved Permanently header Location http example com newpage html exit gt Prikladi perenapravlennya dlya vebservera nginx Perenapravlennya z vebstorinki location old url return 301 new url Poshukovi sistemiGoogle rekomenduye vikoristovuvati kod stanu 301 dlya zmini URL storinki tak yak vona pokazana v rezultatah poshuku Yandeks takozh rekomenduye vikoristovuvati kod stanu 301 perenapravlennya storinok Z tochki zoru SEO same 301 redirekt povidomlyaye poshukovim robotam sho potribno ob yednati dvi rizni adresi v odnu de osnovnoyu bude ta na yaku j zdijsnyuyetsya perenapravlennya Poshukovi sistemi takozh rekomenduyut nalashtovuvati danij redirekt z dodatkovih dzerkal na osnovne napriklad koli sajt odnochasno dostupnij za adresami z www i bez www abo vikoristovuye zahishenij protokol https ale pri comu takozh dostupnij z http Div takozhSpisok kodiv stanu HTTP Spisok zagolovkiv HTTPPrimitki stackoverflow com Arhiv originalu za 27 sichnya 2016 Procitovano 26 listopada 2015 support google com Arhiv originalu za 24 lipnya 2017 Procitovano 26 listopada 2015 yandex ru Arhiv originalu za 7 kvitnya 2017 Procitovano 26 listopada 2015 PosilannyaRFC 2616 1 7 bereznya 2011 u Wayback Machine Sho take redirekt i yak jogo propisati 21 listopada 2021 u Wayback Machine