Что такое редирект 301?

что такое редирект 301
Что такое редирект 301? это такой тип ответа, который возвращает сервер при обращение к определенной странице сайта, и он означает то, что данная страница переехала на новый адрес. Диапазон применения редиректа 301 достаточно обширный – начиная от склейки доменного имени с www и без него и до смены домена и переезде страниц сайта. Если вам необходимо сохранить позиции сайта в рейтинге поисковых систем и при этом перенести страницы сайта, то редирект 301 оптимальный вариант решения данной задачи.
Плюсы использования редиректа 301.
1) Поисковые роботы и обычные пользователи сайта будут перенаправляться на новый указанный адрес.
2) Новый адрес получит весь набор показателей от старого адреса, таких как: pagerank и тИЦ, т.е сохраняется весь вес ссылочной массы и страниц.
Тему значимости редиректа 301 часто обговаривают на форумах и блогах, так как способов осуществления данного редиректа не мало, я приведу самые распространенные и эффективные на мой взгляд из них, такие как:
1) Обычный и самый распространенный редирект (в файле .htaccess или httpd.conf для Apache):
Redirect 301 / http://www.dzya.com/new.htm
где:
Redirect 301 – это команда, оповещающая, что страница переехала
/ – значит, что все содержимое верхнего уровня сайта, будет перенаправлено
http://www.dzya.com/new.htm – новая страница или сайт (не забывайте дописывать “/”, если перенаправление указывает на сайт).
Если вы хотите перенаправить только отдельную страницу, то:
Redirect 301 /old/old.htm http://www.dzya.com/new.htm
где:
/old/old.htm – путь и имя старой страницы
pagerank при этом сохраняется и переносится на новую страницу.
Если вы хотите перенаправить сайт, то:
RedirectPermanent / http://www.dzya.com/
Пример перенаправления каталога:
RedirectPermanent /old-folder http://www.dzya.com/new-folder/
Например, зашедших в dzya.com переадресуем на www.dzya.com, остальных на go.dzya.com:
Redirect permanent /test http://www.dzya.com/
Redirect permanent / http://go.dzya.com/
2) Применение mod_rewrite (пишем все в файле .htaccess):
Обратите внимание на то, как именно выводится в выдаче поисковых систем ваш сайт с www или без него, и в зависимости от этого решите для себя нужно ли склеивать домен с www и без
Что бы склеить имя сайта с www и без него, нужно прописать следующее:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^dzya\.com
RewriteRule ^(.*)$ http://www.dzya.com/$1 [R=permanent,L] .
или альтернативный код:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.dzya.com/$1 [R=301,L]
Синтаксис [R=301,L] означает: что нужно переадресовать посетителя и отправить ему код статуса 301 (R=301).
Редирект с прошлого домена на новый:
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.dzya.com/$1 [R=301,L]
К примеру, если вы желаете чтобы вместо dzya-page.htm загружался файл dzya-page.html, добавьте в .htaccess:
RewriteEngine on
RewriteBase /
RewriteRule ^rewrite\.htm$ dzya-page.html [R=permanent]
Что бы заменить все .htm файлы на .html файлами:
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)\.htm$ $1.html [R=permanent]
3) Редирект с использованием PHP:
< ? php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.dzya.com/newfolder/new.htm");
exit();
?>
или более дополненный вариант:
< ?
$ref=$_SERVER['QUERY_STRING'];
if ($ref!='') $ref='?'.$ref;
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://dzya.com/'.$ref);
exit();
?>
4) Редирект с использованием ASP
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.dzya.com"
response.end
%>
5) Редирект с использованием meta refresh
< meta http-equiv='refresh' content='0; url=http://dzya.com'>
где 0 – задержка переадресации в секундах, dzya.com -страница, куда переадресуем.
Для переадресации страниц или склейки доменов, достаточно использовать первый способ.


