Редирект наводит порядки. Что такое редирект и как его сделать

Редирект наводит порядки. Что такое редирект и как его сделать

Код ответа 301 (Moved Permanently) означает, что запрошенный документ теперь доступен по новому адресу на постоянной основе. Редирект 301 может понадобиться в нескольких случаях: переезд на новый домен, изменение адреса страницы или . Цели этих мероприятий вполне прозрачны:

  • Перенос старых показателей на новую страницу или домен.
  • Устранение битых ссылок, как внешних, так и внутренних.
  • Устранение дублей страниц.

Существует несколько способов сделать 301 редирект, но я предпочитаю вариант с использованием файла.htaccess, который находится в корневой папке FTP вашего сайта (если его там нет, то просто создайте его, он не имеет расширения).

Настройка 301 редиректа со страницы на страницу

Довольно часто возникает ситуация, когда страница сайта была удалена или вынуждена сменить свой URL. При обращении к её старому адресу, пользователь, само собой, увидит страницу 404 ошибки (не найдено).

Если станица маловажная, то не стоит и возиться, но если к ней часто обращались посетители сайта (и, возможно, у кого-то она сидит в закладках), если на неё ведут неподконтрольные вам внешние ссылки или, наоборот, подконтрольные внутренние, но в таких объёмах, что очень хочется их править, то настройка 301 редирект со старой страницы на новую станет для вас идеальным решением.

Также его можно использовать для борьбы с дублями страниц. В общем нужно писать книгу на тему «99 способов использование Redirect 301». Вот его синтаксис:

Redirect 301 /old-page.html http://new-domain.ru/new-page.html

Ну или так, результат будет один и тот же:

Redirect permanent /old-page.html http://new-domain.ru/new-page.html

Поясняю: /old-page.html - относительный адрес старой страницы. Он может быть вложенным: /old-category/old-page.html, ну или таким: /old-category/old-page/ - тут никаких ограничений нет. Тоже самое относится к http://new-domain.ru/new-page.html (новой странице), с той лишь разницей, что путь тут абсолютный (не обязательно, чтобы это был новый домен - может быть просто новый внутренний адрес страницы).

Настройка 301 редиректа при переносе сайта на новый домен

Не менее понятная ситуация. Возникла необходимость переехать на новый домен, сохранив показатели старого ( , PR). В этом случае приписываем в.htaccess старого домена следующее:

Options +FollowSymLinks
RewriteEngine on

RewriteEngine off

RewriteCond %{HTTP_HOST} ^old-domain\.ru
RewriteRule ^(.*)$ http://new-domain.ru/$1
RewriteCond %{HTTP_HOST} ^www.oldsite\.ru
RewriteRule ^(.*)$ http://old-domain.ru/$1

В данном примере мы установили редирект всех страниц старого домена на страницы нового (при условии, что их относительные адреса совпадают). При этом мы оставили без редиректа на старом домене файл robots.txt, чтобы процесс переноса был более полноценным. В него мы прописываем:

User-agent: *
Disallow:
Host: newsite.ru
Sitemap: http://newsite.ru/sitemap.xml

Ну и ждём пару месяцев, пока переезд домена не будет зачтен, а все характеристики - переданы.

Склейка зеркал сайта: 301 редирект c www на без www и наоборот

Существует несколько вариантов обращения к сайту - с www и без www (например, сайт и www.сайт). Пользователю все равно, как именно вводить URL, так как он в любом случае попадет на одну и ту же страницу. Иначе дело обстоит с поисковыми системами. Они расценивают www.site.ru и site.ru, как два совершенно разных домена (что тянется из глубин истории всемирной сети, когда это действительно было так).

Эти дубли мешают индексации сайта и продвижению в целом, так как, во-первых, это банальные дубли страниц (уж извиняюсь за повторение) и, во-вторых, входящие ссылки будут также укладываться в разные корзины. Тоже самое касается и дублей главной страницы: site.ru, site.ru/index.html, site.ru/index.php и т.д. По этой причине еще на этапе создания сайта желательно позаботиться об этом вопросе и одну из версий сайта (например, c www) переадресовать на другую (например, без www). Если момент был упущен, то тут нет ничего страшного.

Рассмотрим процесс склейки зеркал с помощью 301 редиректа поэтапно.

1. Определяем основной домен, выбранный для индексации поисковыми системами.

Основное зеркало можно легко определить по результатам поисковой выдачи Яндекс и . Вводим название домена и смотрим, какой адрес отобразится: www.site.ru или site.ru. Если же сайт еще не проиндексирован, то выбираем его по своему усмотрению. Если в Google и Yandex основные домены разные, то лучше оставьте Яндексовский.

2. Прописываем 301 редирект в.htaccess.

Находим в корне FTP сайта файл.htaccess, скачиваем и открываем в блокноте, а затем вносим в него необходимые изменения. Первый вариант - 301 редирект домена без www на с www:

Options +FollowSymLinks
RewriteEngine On

RewriteEngine off

RewriteCond %{HTTP_HOST} ^site.ru$
RewriteRule (.*) http://www.site.ru/$1

Обратная ситуация - с www на без www:

Options +FollowSymLinks
RewriteEngine On

RewriteEngine off

RewriteCond %{HTTP_HOST} ^www.site.ru$
RewriteRule (.*) http://site.ru/$1

После завершения редактирования, сохраняем файл и загружаем его в корневую папку FTP с перезаписью.

Опционально можно сразу же позаботиться о дублях главной страницы вида index.php и index.html, добавим ниже следующий код:


RewriteRule ^index\.html$ http://www.site.ru/

RewriteRule ^index\.php$ http://www.site.ru/

Ну и, опять же, если у вас site.ru:

RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://site.ru/
RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://site.ru/

3. Настройка robots.txt

Увидели знакомую директиву, оставляющей robots.txt нетронутым? Все верно, вносим изменение в robots.txt:

Host: основное-зеркало.ru

4. Проверяем работу сайта.

Вводим тот адрес, который с которого мы проставляли редирект, например www.site.ru или site.ru/index.html и если при заходе на него происходит переход на site.ru, то всё настроено правильно.

5. Настройка Yandex и Google вебмастер.

Дополнительно применяем соответствующие настройки в личных . В случае с Yandex:

Ну и для Google:

На этом вроде всё. Удачи вам и если появятся вопросы, то пишите в комментариях.

Если вы хотите изменить URL-адрес страницы, отображаемый в результатах поиска, рекомендуется использовать переадресацию 301 (301 Permanent Redirect), выполняемую сервером. Это самый лучший способ обеспечить переход пользователей и поисковых систем на нужную страницу.

Код статуса 301 означает, что запрашиваемая страница окончательно перемещена в новое местоположение.

На самом деле существует несколько редиректов. О том как сделать 301 редирект можно посмотреть на инфографике.

В каких случаях использовать редирект 301?

Использовать переадресацию 301 особенно удобно в следующих случаях:

  • При смене домена. Вы переместили свой сайт в другой домен и хотите, чтобы казалось, будто перехода и вовсе не было.
  • Для передачи новому домену Page Rank и тИЦ.
  • Для сохранения поискового трафика.
  • Пользователи могут получить доступ к сайту, используя несколько различных URL-адресов. Например, попасть на страницу можно несколькими способами: //site.ru/sub , //sub.site.ru или //www.site.ru . Бывает удобно выбрать один из этих URL-адресов в качестве канонического (основного) и использовать переадресацию 301 для перенаправления на него трафика с других URL. Для настройки можно использовать «Инструменты для веб-мастеров».
  • При объединении двух сайтов требуется, чтобы все ссылки на устаревшие страницы указывали на страницы, действующие в данный момент.
  • При переносе страницы сайта в новое место.
  • Для склейки имени сайта с префиксом www и без него.
  • Статья по теме: Корректный переезд сайта на протокол https

    301-ая ошибка (301 Permament Redirect), возвращаемая при обращении к определенному адресу страницы, означает, что сайт был на постоянной основе перенесен на новый адрес, также указанный в HTTP заголовке. Как пользователи, зашедшие через браузер, так и поисковые боты будут перенаправляться по новому адресу, при этом, для поисковиков все свойства старого адреса (страницы) будут переданы новому URL . При 301 редиректе произойдет склейка старого и нового адресов: параметры вроде PageRank и тИЦ, а также вес страницы и ссылочный вес старого адреса будет передан новому URL .

    Редирект с номером ошибки 301 (moved permanently) это наилучший способ сохранить рейтинг сайта в поисковых системах при переносе его на новый домен или смене системы управления контентом. Переадресацию можно выполнить несколькими способами, в зависимости от установленного программного обеспечения.

    301 редирект в.htaccess

    При использовании сервера Apache, переадресацию можно просто выполнить с помощью файла.htaccess , однако, при этом, не забыть включить модули mod_alias (для поддержки директив Redirect , RedirectPermanent и RedirectMatch) и/или mod_rewrite (для использования реврайта) в php.ini .

    Для этого поместите в корне папке вашего сайта файл.htaccess. Редирект с помощью директивы Redirect или RedirectPermanent модуля mod_alias Redirect 301 /old-page.html //new-domain.ru/new-page.html

    Redirect permanent /old-page.html //new-domain.ru/new-page.html

    Недостатком данного способа является то, что все адреса, которые необходимо перенаправить, нужно перечислять один за одним, каждый отдельно. Также можно использовать RedirectPermanent для аналогичных целей.

    RedirectPermanent /old-url.html //new-site.ru/new-url.html

    Редирект с помощью директивы RedirectMatch

    Этот редирект подобен предыдущему, за исключением того, что можно задавать регулярное выражение для старых URL адресов. Допустим, при смене движка с PHP на ASP, можно старые адреса перенаправить следующим образом:

    RedirectMatch /(.*).php$ /$1.aspx

    Редирект с помощью директивы RewriteRule модуля mod_rewrite

    Для использования директивы RewriteRule необходимо удостовериться, что в httpd.conf подключен модуль mod_rewrite , а также влючена опция FollowSymLinks . Использование реврайт модуля дает много возможностей для перенаправления страниц на новые адреса.

    Статья

    Довольна сложная и интересная тема. Многие, почти все начинающие блогеры даже понятия не имеют, что такое 301 редирект. Я как-то уже касался этой темы в статье про дубли контента и теперь мы рассмотрим ее поподробней.

    Что такое 301 редирект? Это специальный код, который возвращает сервер при обращении к определенному URL.

    Что это значит? Это значит, что если вы набрали в адресной строке браузера определенный URL, то Вас перенаправят на новый адрес.

    Для чего это все нужно? Возьмем пример из реальной жизни. Заходите вы по определенному адресу, а вам говорят — «А здесь теперь такие не живут! Они совсем своим имуществом переехали на другую улицу и вот Вам их новый адрес…» Согласитесь полезная информация? Я не зря сказал — «…со все своим имуществом» т.е они не чего не оставили на старом адресе. Это важно!

    Если Ваш проект по какой-то причине переехал на новый адрес, то как раз 301 редирект подскажет поисковому роботу где Вас искать, причем Ваш сайт не потеряет вес и другие показатели при переезде.

    Прописываем 301 редирект в файле.htaccess

    Чтобы выполнить сие действие надо в файле.htaccess прописать следующее:

  • Redirect 301 / http://новый сайт.ru
  • Где «/» означает, что все начиная с «головы» сайта включая все подкаталоги будет переадресовано на новый адрес.

    Не забудьте сделать резервную копию сайта если вдруг что-то пойдет не так!

    Теперь рассмотрим другую ситуацию. У меня есть 2 квартиры, а живу я лишь в одной. Ко мне приходят письма по другому адресу, звонит телефон, заходят разные люди и т.д. А я забыл повесить объявления, что нахожусь я вообще в другом месте. Забавная история! Получается я теряю собственные авторитет в глазах окружающих из-за своей забывчивости.

    Из этого вывод. Надо непременно указать поисковому роботу точный адрес проекта, например: www.сайт.com или просто сайт.com потому, что это два разных адреса.

    Как это осуществить смотрите на этом примере:

    Перенаправление с www на без www

  • Options +FollowSymLinks
  • RewriteEngine On
  • RewriteCond %{HTTP_HOST} ^www.сайт\.com$
  • RewriteRule ^(.*)$ http://сайт.com/$1
  • Перенаправление с без www на с www

  • Options +FollowSymLinks
  • RewriteEngine On
  • RewriteCond %{HTTP_HOST} ^сайт\.com$
  • RewriteRule ^(.*)$ http://www.сайт.com/$1
  • Надо заметить, что если в файле.htaccess уже прописана строчка RewriteEngine On, то ее повторять уже не надо и не забудьте вписать свой домен.

    Существует мнение, что с защищенного протокола https:// также надо перенапралять пользователей на основной протокол http:// Я даже обратился в службу поддержки своего хостинг провайдера с этим вопросом. На что мне ответили, что возможность перенаправления есть и для этого в файле.htaccess необходимо прописать следующее:

  • RewriteEngine On
  • RewriteCond %{SERVER_PORT} ^443$
  • RewriteCond %{HTTPS} =on
  • RewriteRule ^(.*)$ http://ваш сайт.com/$1
  • Бывает такие случаи, что необходимо перенести только одну страницу при этом сохранить ее вес. Для этого в файле.htaccess прописываем:

  • Redirect 301 /путь/пост.html http://новый сайт.com/пост.html
  • В этой статье я постарался описать самые распространенные случаи использования 301 редиректа, которые необходимо знать каждому веб-мастеру. На самом деле возможности 301 редиректа на этом не ограничиваются и в будущем я еще не раз буду возвращаться к этой теме, так что советую подписаться на обновления блога .

    До встречи!

    С уважением, Виталий Кириллов

    Инструкция

    Есть возможность отправлять на другой сайт только тех посетителей, которые запрашивают определенного типа. Для этого нужно воспользоваться другой директивой - RedirectMatch. Она отличается от директивы Redirect тем, что использует для сравнения запроса и записанного в htaccess условия регулярное выражение (regexp). Например:RedirectMatch (.*).html$

    Чтобы реализовать этот метод перенаправления на практике, откройте простой текстовый редактор (Блокнот) и создайте в нем пустой документ. Составьте нужное условие на основе приведенных правил и запишите его в этот документ. Затем сохраните с именем ".htaccess" и загрузите в корневую директорию своего сайта . На этом процедура будет закончена.

    Источники:

    • Redirect 301: Как сделать редирект с одной страницы на другую
    • Редирект 301 с со страницы на страницу не затрагивая другие

    Организовать постоянно действующий автоматический переход всех посетителей одной конкретной страницы на другой сайт можно либо средствами сервера и серверных языков программирования, либо с помощью HTML и JavaScript. Плюсы второго варианта в простоте и доступности - для его реализации не требуется знаний программирования, из обязательных требований нужен только доступ к редактированию исходного кода страницы.

    Инструкция

    Можно решить задачу автоматического перенаправления посетителей на другой сайт только средствами HTML (HyperText Markup language - «язык разметки гипертекста»). В нем есть (метатег), которая сообщает браузеру, что после загрузки текущей страницы следует начать загрузку другой. Этот метатег информацию (атрибуты тега) об адресе перенаправления и времени, через которое следует отправлять на страницу сайт а. Выглядеть он может, например, так:Здесь Refresh - это и есть кодовое слово, которое запускает механизм перенаправления. Цифра 5 указывает, что процесс надо начинать через после загрузки этой страницы. Это время может быть нужно, чтобы посетитель, например, успел сообщение, которое вы поместите в эту страницу. Если такая пауза не нужна - поставьте ноль. А URL=http://www.сайт содержит адрес, на который браузер должен отправить посетителя. Помещать этот метатег следует в заголовочную часть исходного кода страницы - между и .

    Другой способ реализуется с помощью языка программирования JavaScript. Вам потребуется всего одна строка кода, чтобы веб-серфера на нужный адрес. Она может выглядеть, например, так:window.location.reload("http://www..location.replace("http://www..location.href="/";Здесь вам нужно только заменить адрес тем, который вам. Эту команду следует поместить внутрь тегов, которые сообщают браузеру, что она написана на языке JavaScript:
    document.location.replace("http://www.сайт");
    А эти три строки, в свою очередь, размесить внутри той же заголовочной области (между и ).

    После того, как вы выберите один из этих вариантов, откройте нужную страницу, например, в редакторе страниц системы управления сайт ом. Переключитесь в режим редактирования HTML-кода и найдите в нем тег . Скопируйте подготовленный код редиректа (JavaScript или HTML) и вставьте его перед этим тегом. Затем сохраните измененную страницу.

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

    301 редирект или 301 redirect (от англ. перенаправление) — это принудительная переадресация пользователя с одного URL на другой. Причем оба адреса могут принадлежать как одному, так и разным доменным именам .

    Проще говоря. Пользователь вводит в адресной строке браузера (или переходит по ссылке) один URL адрес, но автоматически попадает на другой.

    Что происходит в данный момент?

    Происходит переадресация при помощи 301 редиректа. Действует это следующим образом.

    Человек вводит в адресной строке URL адрес (или нажимает на гиперссылку);

    Сервер получает запрос с URL адресом и начинает его обрабатывать;

    В процессе обработки запроса «сталкивается» с инструкцией redirect и следует ее указаниям;

    Отправляет пользователю новый URL адрес, который указан в инструкции и ответ 301.

    Стоит сказать, что 301 редирект справедлив не только для людей, но и для роботов. То есть, краулер поисковой системы также будет перенаправлен на другой URL при наличии переадресации. Но об этом поговорим .

    Для чего нужен 301 редирект?

    Как мы уже выяснили, 301 редирект используется для переадресации с одного адреса, на другой. В основном, это необходимо в следующих случаях.

      Адрес страницы навсегда изменился, поэтому нужно перенаправить пользователей на актуальный URL;

      Поменялся домен сайта, поэтому нужно переадресовать людей на новый домен;

      Один и тот же материал имеет несколько URL адресов, то есть, дублей;

      При работе online сервисов, форм, модулей и прочих интерактивных элементов сайта необходимо перенаправление.

    Конечно, это неполный список того, как можно использовать 301 redirect, однако это основное.

    Нужно понимать, что сделать 301 redirect со страницы возможно только при наличии доступа к этой самой странице. То есть, взять и прописать переадресацию для любого ресурса не получится. Именно поэтому, 301 редирект считается «официальным» перенаправлением, которое сделал владелец сайта.

    Как сделать 301 редирект?

    Создание 301 редиректа довольно простая задача. Тут нет запутанных алгоритмов и сложных структур. Необходимо лишь выучить синтаксис и понять несколько принципов работы.

    Ниже мы опишем ряд основных способов создания 301 redirect, которые отличаются по своему исполнению, но имеют один и тот же результат.

    301 редирект в.htaccess (Apache)

    Создание 301 редиректа в файле.htaccess является самым популярным способом сделать переадресацию. Он достаточно прост и доступен всем пользователям, которые используют в качестве сервера Apache.

    Файл.htaccess находится в корневом каталоге Вашего сайта. Попасть туда можно через FTP подключение или файловый менеджер, который доступен практически у всех хост-провайдеров.

    Обратите внимание, что название файла начинается со служебного символа — точки. В некоторых файловых системах подобные документы по умолчанию скрыты. В таком случае, необходимо поменять настройки, чтобы увидеть.htaccess.

    Мы не будем подробно разбирать все инструкции файла.htaccess, рассмотрим только те, что касаются redirect 301.

    Для начала необходимо убедиться, что у Вас установлен модуль mod_rewrite, так как именно он отвечает за переадресацию URL адресов. По этому поводу Вы можете обратиться к своему хост провайдеру или самостоятельно найти и проверить файл конфигурации Apache (httpd.conf)

    Подготавливаем.htaccess к работе

    Создаем или открываем уже существующий файл.htaccess. Прописываем в нем следующие строки:

    Это запись-условие. Она проверяет установлен ли на Apache необходимый нам модуль mod_rewrite. Если таковой имеется, то выполняется все, что указано между тегами и . Если отказаться от этой инструкции, то при отсутствии модуля будет выводится ошибка.

    После этого, внутри вышеуказанных тегов проверки наличия модуля необходимо указать следующую инструкцию:

    RewriteEngine on

    Данная запись позволит активировать модуль mod_rewrite.

    Следующей строкой прописываем:

    RewriteBase /

    Подобная команда устанавливает базовый URL. Обычно это сам домен, примеру http://example.ru. Именно от установленного адреса мы и будем отталкиваться при дальнейшей работе.

    Если Вы все верно прописали, то итогом будет вот такой файл:

    Вот и все, наш.htaccess подготовлен для добавления перенаправлений.

    Добавляем в.htaccess редирект

    Существуют две основные инструкции, при помощи которых можно сделать перенаправление:

    Redirect 301 — самый простой вид редиректа, предназначен для переадресации со страницы на страницу как внутри одного домена, так и в рамках нескольких доменных адресов. Работает с URL без параметров.

    RewriteCond / RewriteRule — более гибкие и сложные правила переадресации. Обычно используются для массовых редиректов.

    Теперь о каждом подробнее.

    Redirect 301

    Самая простая во всех смыслах инструкция. Ее синтаксис умещается в одну строку:

    Redirect 301

    Между адресами всего один пробел. Никаких точек, дефисов и других сторонних символов.

    Пример использования редиректа:

    Redirect 301 /old-page.html http://example.ru/new-page.html

    В файле это выглядит следующим образом:

    Это все, что нужно знать о данной инструкции.

    RewriteRule (RewriteCond)

    Это составная инструкция, которая делится на 2 основные команды.

    RewriteCond — Задает условие для следующей за ней директивы RewriteRule. Отдельно не применяется.

    RewriteRule — Описывает правило изменения URL адреса.

    Давайте сразу рассмотрим пример использования. Ниже присутствует часть файла.htaccess. Данный отрывок отвечает за 301 редирект с домена без WWW, на домен с WWW.

    Будем разбирать по строчкам.

    # BEGIN WordPress RewriteEngine On RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1

    1 строка . Закомментированный текст. Комментарии в файле.htaccess начинаются с «#». На исполнение файла никак не влияет.

    2 строка . Проверка наличия модуля mod_rewrite.

    3 строка . Активация модуля mod_rewrite.

    4 строка . Директива RewriteCond. Проверяет, есть ли «www» в начале адреса. Если нет, то срабатывает ниже расположенная RewriteRule.

    5 строка . Директива RewriteRule. Переадресовывает на «www».

    6 строка . Окончание контейнера проверки наличия модуля mod_rewrite.

    Мы не будем подробно расписывать синтаксис и все возможные команды, которые применяются при работе с файлом.htaccess в данной статье, так как это очень глобальная и сторонняя от SEO тема. Примеры редиректов Вы сможете найти .

    301 редирект при помощи PHP

    Помимо файла.htaccess, 301 redirect возможно сделать посредством php. Суть метода очень проста и задействует заголовки отправляемые сервером на запрос клиента.

    Чтобы сделать редирект, в документе необходимо прописать php код следующего содержания:

    Таким образом, при обращении к странице клиент получит необходимый нам заголовок содержащий переадресацию.

    Обратите внимание, что до вызова header, выводится ничего не должно, в противном случае Вы получите ошибку. Речь идет об «echo» или «print». Лучше всего размещать этот код в самом начале скрипта.

    А вот вариант с сохранением всех параметров запроса и адреса страницы (то есть, домен будет изменен, а оставшаяся часть URL останется прежней) :

    Подобный метод переадресации достаточно прост в реализации, однако имеет существенный минус. Код необходимо физически добавлять для каждой страницы, с которой нужно сделать редирект.

    301 редирект в Nginx

    Мы не будем подробно рассматривать все нюансы настройки 301 редиректа в nginx, так как это очень глобальная и отдаленная от SEO продвижения тема. Рассмотрим лишь несколько самых популярных перенаправлений.

    301 редирект с http на https для Nginx

    После этих процедур поисковая система поймет, какое зеркало должно участвовать в поиске, а пользователи всегда будут переходить на https.

    Только 301 редирект способен склеивать доменные имена.

    Функция 4. Приводим URL адреса к единому виду

    Используется 301 редирект и для того, чтобы привести все URL адреса сайта в единый вид. Предположим, что часть URL адресов имеет в конце слэш, а часть нет. В таком случае нам необходимо определиться, к какому формату мы приводим адреса и сделать редирект.

    К примеру, у нас на сайте все URL имеют слэш в конце строки. При появлении адреса без слэша, с него автоматически делается переадресация.


    301 редирект или rel=»canonical»

    Как минимум в ряде случаев, атрибут rel=»canonical» считают альтернативной 301-у редиректу. Давайте разберемся, так ли это.

    Напомним, что rel=»canonical» позволяет указать поисковой системе основной URL адрес страницы. Подробнее о данном атрибуте мы писали ранее .

    Для начала нужно понять, в чем отличия данных методов. С этой целью мы создали следующую таблицу.

    Как видно из таблицы, различия между инструментами слишком велики, чтобы считать их альтернативой друг друга. Каждый из них предназначен для решения своих задач.

    Одна из основных функций 301 редиректа, без которой нельзя обойтись в SEO, это склейка зеркал .

    Зеркалами для поисковой системы являются сайты с одинаковым контентом (или частичной копией контента) доступные по разным URL адресам. Как ни странно, практически у каждого сайта в Интернете есть зеркала. Все дело в том, что для поисковой системы домен с www и без www это разные адреса.

    То есть, www..ru для поисковика это различные URL, по которым доступен один и тот же контент. Этот случай настолько популярен, что в Яндекс Вебмастере есть раздел «Переезд сайта», где предоставляется возможность выбора основного зеркала, которое будет в поиске. Переадресация при этом, конечно, не появляется. Эта инструкция предназначена только для робота поисковой системы.

    В случае с www, 301 редирект часто не ставится, так как домены признаются зеркалами автоматически. Хотя такая возможность есть, а иногда даже необходима. Про переадресацию с www на БЕЗ www мы .

    Во всех остальных случаях для склейки понадобится переадресация.

    Предположим, у нас есть посещаемый коммерческий ресурс. Компания, которая им владеет, объединяется с другой фирмой, в результате чего необходимо делать ребрендинг, в том числе и сменить доменное имя сайта. Как быть в этом случае? Ведь сайт стабильно приносит клиентов из органической выдачи.

    Решение есть: необходимо новый домен склеить с существующим. При этом обновленный адрес должен стать основным и присутствовать в поисковой выдаче. В этом нам поможет 301 редирект. Нужно привязать к сайту новый домен, после чего проставить 301 редирект со всех URL содержащих старое доменное имя на соответствующие URL с новым доменным именем. О том, как это делается, .

    Стоит сказать, что после данной процедуры ТИЦ, «ссылочный вес » и другие «пузомерки» будут перенесены на новый домен.

    Через несколько обновлений новый домен появится в поисковой выдаче, сайты будут признаны зеркалами, а позиции и видимость должны сохраниться.

    Разница между 301 и 302 редиректом

    С точки зрения SEO 301 редирект кардинально отличается от 302. Даже несмотря на то, что их синтаксис очень схож, для поисковой системы они несут совершенно разный смысл. Вот их основное отличие:

    301 редирект (Permanent Redirect) — постоянное перемещение страницы;

    302 редирект (Temporary redirect) — временное перемещение страницы;

    Из это вытекают все их различия и принципы использования.

    Проще говоря, делая 301 редирект мы «говорим» поисковой системе о том, что про старый адрес можно забыть и весь материал теперь навсегда доступен по новому URL.

    В случае же с 302 редиректом мы сообщаем, что переадресация выполнена временно и вскоре старый адрес будет снова доступен. То есть, нужно ненадолго передать трафик с одной страницы на другую, после чего все вернется на круги своя.

    *Стоит сказать, что 301 и 302 редирект имеют различные степени риска попадания под фильтры поисковых систем за мошенничество. Безусловно, не нарушая никаких правил к Вам вряд ли будут применены санкции, однако мы все равно оценим риски. Так как 302 редирект часто используется в черном SEO , то риск при его использовании на порядок выше, нежели у 301 редиректа.

    Когда оправдано использование 302 редиректа?

    Использование 302 редиректа оправдано в случаях, когда необходимо на время перенаправить пользователей на другую страницу сайта. Вот примеры таких ситуаций.

  • Плагин Simple 301 Redirects

    Принцип установки точно такой же, как и у Redirection. В поиске плагинов необходимо найти:

    После активации плагина, в левом меню WordPress в пункте «Настройки » появится ссылка «301 redirects «. Переходим по ней и попадаем на страницу с двумя полями.

    Первое поле — откуда ставим редирект, второе — куда . Тут нет сложных настроек, все максимально просто.

    301 редирект в Joomla!

    Для создания 301 редиректа, в Joomla! 3 уже имеется стандартный компонент. Найти его можно развернув меню «Компоненты » — > «Перенаправление «.

    После перехода Вы увидите все имеющиеся редиректы, если они есть.

    Для создания нового, необходимо нажать на кнопку «Создать» и заполнить все обязательные поля (отмечены звездочкой).

    Перенаправление сразу должно заработать после сохранения. Если этого не произошло, необходимо выполнить нижеуказанные действия.

    Что делать, если 301 редирект в Joomla! не работает?

    Если при использовании стандартного компонента перенаправлений в Joomla! 3, редирект так и не заработал, необходимо:

    Открыть файл configuration.php находящийся в корневой папке Вашего сайта;

    Найти переменную public $live_site;

    Присвоить ей в качестве значения домен своего сайта.

    Сохраняем изменения и проверяем редирект.

    301 редирект в Opencart 2

    Для Opencart 2 существует готовый модуль, позволяющий создавать постоянную переадресацию. Его название «Менеджер 301 редиректов «.

    Он поддерживает всевозможные варианты 301-го редиректа и совместим со всеми версиями Opencart 2.x.

    Данный модуль может конфликтовать с ранее установленными SEO расширениями, поэтому, ознакомьтесь с инструкцией перед покупкой и установкой.

    Не забывайте, что любая CMS система, в том числе и Opencart, поддерживает редиректы созданные вручную в или посредством .

    301 редирект в Modx

    Для Modx Revo существует множество готовых решений реализации 301-го редиректа. Одно из них Redirector. Установка и использование данного расширения не составляет никаких сложностей. Если, все же, у Вас возникли трудности, Вы можете подробно изучить любой вопрос на официальной странице https://docs.modx.com/extras/revo/redirector.

    301 редирект для Wix

    В Wix существует стандартная функция, позволяющая сделать 301 редирект. Ничего придумывать не придется, просто следуйте нижеуказанной инструкции.

    Переходим в режим управления сайта;

    Находим раздел SEO и переходим в него;

    Пролистываем страницу вниз до блока «Переадресация: 301 редирект»;

    Нажимаем «Настроить переадресацию»;

    В соответствующие поля вводим старый и новый URL;

    Проверяем работоспособность переадресации.

    Распространенные редиректы

    Ниже мы собрали самые распространенные варианты 301-х редиректов, которые создаются в файле.htaccess. Во многих примерах необходимо заменить демо данные, иначе переадресация будет работать некорректно.

    301 редирект с http на https

    Обязательный редирект при переходе на защищенный протокол. В случае его отсутствия, пользователям будут показываться страницы с различными протоколами, а в поиск попадут дубли.

    RewriteCond %{HTTPS} !=on RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1

    Итогом данного редиректа будет являться добавление ко всем URL сайта протокола https.

    301 редирект с www на БЕЗ www

    Если в качестве основного зеркала сайта Вы выбрали домен без WWW, то Вам необходим соответствующий редирект. Его пример ниже.

    RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1

    Итогом данного редиректа будет являться «удаление» из всех URL адресов префикса «WWW».

    301 редирект с БЕЗ www на www

    Если в качестве основного зеркала был выбран домен с WWW, то Вам необходимо добавить ко всем URL соответствующий префикс «WWW». В этом Вам поможет указанный ниже редирект.

    RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1

    Итогом данного редиректа будет являться добавление ко всем URL адресам префикса «WWW».

    301 редирект с одной страницы на другую

    Один из самых простых и распространенных редиректов. Умещается в одну строчку. Позволяет навсегда сменить URL адрес страницы, избавиться от дублей и старых материалов.

    Redirect 301 /page-1/ http://mysite.com/new-page-1/

    Итогом исполнения вышеуказанной инструкции будет являться постоянная переадресация со страницы /page-1/ на страницу /new-page-1/. При этом раздел /page-1/ будет исключен из поиска, а /new-page-1/ получит весь имеющийся «вес».

    Обратите внимание, подобным образом возможно сделать переадресацию только для URL адресов без параметров. То есть, для страницы /page-1/?productID=7389 эта команда работать не будет.

    301 редирект с домена на домен

    Позволяет , а также полностью и безоговорочно перенести сайт на другой домен.

    RewriteEngine On RewriteCond %{HTTP_HOST} domain1.ru RewriteRule (.*) http://domain2.ru/$1

    Итогом вышеуказанного редиректа станет перенаправление всех обращений к domain1.ru на domain2.ru.

    301 редирект для слеша (Удаляем слеш на конце)

    Для того, чтобы поисковая система не загружала и не размещала дубли в поиске, необходимо привести все URL к единому формату. В том числе, это касается и наличия слэша в конце адреса страницы. Даже несмотря на то, что роботы научились исключить из поиска подобного рода дубли, для сайтов без слэша редирект желательно делать.

    RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} ^(.+)/$ RewriteRule ^(.+)/$ /$1

    Итогом будет являться «удаление» слэша в конце URL адреса.

    301 редирект для слеша (Добавляем слеш на конце)

    Обратный от ранее упомянутого редирект. Добавляет слэш в конце строки URL адреса.

    RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*[^/])$ $1/

    Итогом будет являться «добавление» слэша в конце URL адреса.

    301 редирект с index.php (html)

    Во многих CMS системах, в том числе и популярных, при некорректной настройке URL, главная страница становится доступна как по доменному имени, так и по доменному имени + index.php (html). То есть, сайт и сайт/index.php ведут на одну и ту же страницу — главную. Для поисковой системы это дубли, поэтому от них нужно избавляться.

    Пример 1, для index.php RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.php\ HTTP/ RewriteRule ^index\.php$ http://сайт/ Пример 2, для index.html RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.html\ HTTP/ RewriteRule ^index\.html$ http://сайт/

    Итогом обоих примеров будет редирект с /index.php (html) на «корень сайта», то есть, просто на домен.

    Массовый 301 редирект

    Массовый 301 редирект используется, в основном, при смене структуры сайта, раздела или вида URL адреса. В отличие от единичных редиректов со страницы на страницу, он делается по определенному правилу, под которое подпадают все URL адреса, для которых необходимо перенаправление.

    В некоторых CMS системах по умолчанию используется генерация 301-х редиректов для создания единого адреса с ЧПУ.

    К массовым редиректам можно отнести большинство вышеуказанных примеров, так как их правила распространяются не на один URL адрес, а на все существующие или отобранную группу.

    Редирект со страницы 404 Not Found

    Создание редиректа с несуществующей страницы на главную (или любую другую) технически возможно. В этом нет никакой проблемы. Однако с точки зрения SEO это будет некорректно. При обращении к несуществующему разделу индексирующий робот должен получать соответствующий заголовок — 404. Только так он сможет корректно индексировать сайт. Кроме этого, поисковые системы не любят большое количество редиректов, поэтому их использование нужно сократить до минимума.

    Пример 1. Редирект с 404 страницы на главную

    Вот пример редиректа со всех не найденных страниц на главную.

    ErrorDocument 404 http://www.site.com/301.html

    Итогом данного редиректа будет являться перенаправление всех обращений к страницам 404 на главную страницу сайта.

    Пример 2. Редирект с 404 страницы на главную через 301 редирект

    В данном примере, по факту, используются две переадресации, поэтому поисковые системы его не приветствуют. Однако, если Вам необходимо сделать постоянное перенаправление через 301 редирект, то вот его пример.

    ErrorDocument 404 http://www.site.com/301.html RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule 301.html http://www.site.com/

    Пример 3. редирект с 404 страницы на заранее подготовленную

    Перенаправление возможно сделать не только на главную страницу, но и на любой другой раздел. К примеру, на заранее подготовленную страницу 404. Выглядит это следующим образом:

    ErrorDocument 404 /404.html

    Проверяем 301 редирект

    После того, как Вы настроили 301 редирект, его необходимо проверить на корректность работы. Для этого введите в адресной строке своего браузера URL страницы, с которой была сделана переадресация. Если Вы видите новую страницу, то есть, ту, на которую делали редирект — то все корректно работает.

    Для того, чтобы удостовериться, что сработал именно 301 редирект, необходимо перейти в Яндекс Вебмастер в раздел «Инструменты » — > «Проверка ответа сервера «.

    В поле «Опрашиваемый URL » необходимо ввести адрес страницы, с которой Вы делали перенаправление. Итогом проверки должен быть код статуса HTTP «301 Moved Permanently «

    В случае, если при обращении к старой странице перенаправление не происходит или код статуса HTTP не «301 Moved Permanently» — проверьте корректность настройки редиректа.

    Что делать, если 301 редирект не работает?

    Мы не в силах перечислить все причины, по которым может не работать 301 редирект, но отметим самые распространенные. Вот список проблем, из-за которых чаще всего не работает переадресация:

    Какой он - правильный 301 редирект?

    Правильный 301 редирект отвечает всем нижеперечисленным требованиям:

    Ведет на страницу без последующих перенаправлений . То есть, если Вы сделали редирект со страницы А на страницу Б , то с последней (Б ) уже не должно быть никаких переадресаций. Она должна быть конечной точкой, куда попадет пользователь;

    Переадресовывает на страницу, код ответа которой 200 ОК . То есть, проще говоря, на существующий и доступный раздел. Неприемлемо делать перенаправление на несуществующую или ограниченную в доступе страницу;

    Сделан без синтаксических и логических ошибок;

    301 redirect выбран осознанно. Убедитесь, что Вам нужен именно он, а не 302-ой или 307-ой. Выбор типа переадресации очень важен, ведь с точки зрения SEO, разница между ними глобальна;

    Был сделан сознательный выбор между атрибутом rel=»canonical» и перманентным редиректом. Не стоит делать переадресации когда попало;

    Если Ваш редирект полностью удовлетворяет всем вышеуказанным требованиям, то Вы можете считать его просто великолепным.

    Как убрать 301 редирект?

    Если Вам необходимо убрать 301 редирект, происхождение которого неизвестно, то придется сделать несколько достаточно простых шагов. Что бы их выполнить потребуется доступ к CMS, корневому каталогу сайта и поверхностные знания php/html.



  • © 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows