301 редирект в htaccess на другую страницу. Дополнение HttpFox для Firefox

15.05.2019

Редирект – это способ переадресации пользователей и поисковых роботов на URL адрес, который отличается от первоначально запрошенного. Существует несколько видов переадресации, некоторые из которых приведены ниже.

301 Moved Permanently

301 – постоянный редирект, который указывает на то, что запрашиваемая страница находится по новому адресу, а старый нужно считать устаревшим. Такой вид редиректа передает 90-99% ссылочной массы на новый URL.

Канонизация или склейка домена

Для склейки домена с www на без www:

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

Для склейки домена с без www на с www:

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

Для правильного выбора метода склейки нужно рассмотреть такие факторы:

  • У какого варианта выше индексация;
  • У какого варианта выше позиции в выдаче;
  • Канонизация слэша в конце адреса.

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

  • http://www.site.com/category1
  • http://www.site.com/category1/

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

RewriteCond %{HTTP_HOST} (.*) RewriteCond %{REQUEST_URI} /$ RewriteRule ^(.*)(/)$ $1

или такой, чтобы добавить его:

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

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

Redirect 301 /oldpage.html http://www.site.com/newpage.html

Чтобы убедиться, что при запросе любой версии главной страницы, к примеру: default.htm или index.html , будет произведен редирект на каноничную страницу http://www.site.com , нужно прописывать следующий код редиректа:

RewriteCond %{THE_REQUEST} ^{3,9}\ /([^/]+/)*(default|index|main)\.(html|php|htm)\ HTTP/ RewriteRule ^(([^/]+/)*)(default|main|index)\.(html|php|htm)$ http://www.site.com/$1

Редирект каталога

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

RewriteRule ^(.*)/old-catalog/(.*)$ $1/new-catalog/$2

Но бывает так, что адрес старого каталога отображается сразу после доменного имени, например www.site.com/old-catalog/ . В этом случае используется такой код:

RewriteRule old-catalog /(.*) / old-catalog /$1

Редирект при изменении расширения файлов

При смене CMS обычно меняется только расширении файлов. Для канонизации страниц в этом случае нужно использовать код вида:

RedirectMatch 301 (.*)\.php$ http://www.site.com$1.html

Редирект при появлении нескольких слэшей или тире

По разным причинам бывает, что в адресе появляются лишние слэши или тире, например www.site.com/catalog////page-1.html . Такие страницы нужно переадресовывать на адреса с одним слэшем .

RewriteCond %{REQUEST_URI} ^(.*)//(.*)$ RewriteRule . %1/%2

Таким же образом убираются и лишние тире в адресе, например изменение www.site.com/catalog/page-1.html на www.site.com/catalog/page-1.html .

RewriteCond %{REQUEST_URI} ^(.*)-(.*)$ RewriteRule . %1-%2

.htaccess - лишние слэши после имени домена

  • http://site.com//////catalog

Чтобы убрать все эти слэши так, чтобы было перенаправление на страницу без слэшей, т.е.

  • http://site.com/catalog

Нужно прописать:

RewriteCond %{REQUEST_URI} ^(.*)//(.*)$ RewriteRule . %1/%2

Генерация 301 редиректов

Если технических знаний для написания собственного кода не хватает, то есть специальные сервисы генерации всех основных редиректов:

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

Как проверить 301 редирект?

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

  • Проверить работает ли вообще сайт – зайти на его главную страницу;
  • Побродить по сайту, его разделам и отдельным страницам.

Но есть и сервисы для автоматической проверки редиректа:

  • http://bertal.ru – очень подробные данные обо всех откликах сервера

Правила использования 301 редиректа vs Canonical

Поисковая система Google устанавливает четкие правила, только при соблюдении которых, она будет верно трактовать ваши действия. Вот как буквально понимают поисковики 301 и Canonical:

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

Предпочтения по использованию редиректа 301

Обычно, это наиболее предпочтительный метод:

  • Для отдельных страниц – если навсегда изменился ее адрес;
  • Для доменов – если сайт будет находиться постоянно на новом домене;
  • Для страниц 404 и страниц с контентом, который более не актуален. К примеру, при удалении товара из каталога можно сделать редирект на похожий по функциям товар или на страницу каталога с этим типом товаров.

Когда лучше не использовать редирект 301

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

Понравился пост? Нажми на кнопочки →

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

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

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

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

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

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

Статья по теме: Яндекс заменяет тИЦ на ИКС - новый показатель качества сайта

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.

Что такое перенаправление 301?

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

Инструмент для - файл.htaccess

Рассмотрим такой удобный инструмент, как.htaccess. Редирект 301 через него делать весьма удобно и просто. Htaccess по своей сути является особенным служебным файлом в конфигурации, в котором заключён очень большой функционал и множество возможностей. При помощи его можно установить запрет на доступ к любым каталогам на сервере сайта, указывать кодировку страниц, устанавливать защиту для папок и файлов, производить 301 редирект и некоторые другие действия.

Это описание возможностей данного файла в общих чертах. На самом деле его функционал ещё более расширенный. Файл не имеет названия и пишется как.htaccess. Точка в самом начале является обязательной.

Процедура создания файла.htaccess

Если в корневой папке сайта отсутствует данный файл, его можно очень легко создать собственными силами. Один из самых быстрых способов создания - использование FTP-клиента. Наиболее удобный из них - FileZilla.

Для создания нужно перейти в корневой каталог своего интернет-проекта - нажать в пустом месте правую кнопку компьютерной мыши - выбрать пункт "Создать новый файл" - ввести имя.htaccess - нажать кнопку OK. После этих действий созданный файл можно будет отредактировать. Его открытие можно произвести любым редактором текста.

Но бывает и такое, когда FTP-клиенты скрывают некоторые системные файлы, включая.htaccess. Поэтому, если данный файл не был найден в корневой папке, не нужно спешить его создавать. Прежде всего проверьте его присутствие в скрытых файлах. Для этого необходимо перейти на вкладку “Сервер” и установить галочку на принудительном отображении скрытых файлов.

Итак, создан либо найден файл.htaccess, редирект 301 при помощи его создать будет легко. Однако прежде всего нужно определиться, для чего он нужен.

Самый популярный случай, когда может пригодиться 301 редирект

По рекомендациям ведущих веб-мастеров, каждый ресурс в Сети должен обладать 301 редиректом. И самым популярным случаем, когда он очень нужен, является перенаправление с домена, который в своём составе имеет префикс с www, на домен без него и наоборот.

Это объясняется тем, что у любого сайта в сети Интернет только один тип доменного имени с www либо без него может быть главным. Другой вариант же будет являться зеркалом сайта. Главное зеркало интернет-ресурса расписывается в файле robots.txt при помощи директивы Host. Помимо этого файла, главный вариант домена следует указать в "Яндекс.Вебмастере". Многие поисковые системы хорошо относятся к такому инструменту, как 301 редирект. "Яндекс" не является этому исключением.

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

Значение настройки зеркал сайта

После всех проделанных действий с зеркалом поисковики будут определять главный домен автоматически. Можно даже с лёгкостью проверить редирект, всё будет работать хорошо. На этих действиях можно было бы остановиться, но лучшим путём для SEO-оптимизации интернет-ресурса будет дополнительная настройка редиректа.

Сам префикс www в обозначении уже давным-давно должен был уйти в небытие. Но тем не менее в сети Интернет всё ещё существует много ресурсов с www в названии. Для поисковиков домены с www и без него - два различных адреса. Да и многие пользователи при поиске конкретного интернет-проекта вбивают в адресную строку вариант с www. Поэтому этот префикс пока что имеет место быть. Исходя из этого факта, настройка зеркал является необходимым действием. Да и руководство, как настроить редирект 301, тоже является обязательным к изучению, чтобы ваш интернет-проект успешно индексировался в поисковых системах.

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

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

Будут разделяться между доменами с www и без него в прямой зависимости от того, как на ваш ресурс будут ссылаться другие пользователи и сайты. Это говорит о том, что ваш интернет-проект потеряет часть ссылок, что негативно скажется на его посещаемости и месте в поисковой выдаче. Однако это не самая главная проблема.

Многие веб-мастера понимают, что поисковики непрерывно борются за уникальность контента интернет-ресурсов. Они очень негативно относятся к дублированию информации и довольно серьёзно наказывают сайты со схожим содержимым, вплоть до их полной блокировки в поисковой выдаче. Теперь обрисуем следующую ситуацию: ваш ресурс с самого начала был проиндексирован с префиксом www, но со временем домен без www получил большее число посещение и популярность (на него чаще ссылались и чаще упоминали).

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

Для того чтобы избежать такой ситуации, существует файл.htaccess. Редирект 301, прописанный в нём, способен решить проблему разделения ресурса по доменам с www и с его отсутствием.

Редирект с домена www на без префикса и наоборот

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

Редирект с домена www на без него:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.moydomen.com
RewriteRule ^(.*)$ http://moydomen.com/$1 .

И по-другому:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^moydomen.com
RewriteRule (.*) http://www.moydomen.com/$1 .

Нужно принять во внимание, что вместо moydomen.com необходимо указать адрес своего интернет-ресурса в обоих случаях!

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

Переход с одного домена интернет-проекта на другой

Подобной схемой редиректа, которая приведена выше, следует пользоваться при переходе с одного домена интернет-проекта на другой. Для демонстрации приведём пример. Допустим, следует переехать с домена moysait-1.com на moysait-2.com. В таком случае следует записать в файле.htaccess код:

RewriteEngine On
RewriteCond %{HTTP_HOST} moysait-1.com
RewriteRule (.*) http://moysait-2.com/$1 .

Смена ссылок ЧПУ и редирект при этом

Временами возникает необходимость сменить Вполне возможно, сложилась такая ситуация, что было решено поменять весь раздел на своём ресурсе. Либо же владелец сайта ничего не знал о ссылках ЧПУ, а блог уже существовал и наполнялся материалами. В этом случае может помочь перенаправление. Как настроить 301 редирект для такого случая? Важно, что при таком положении дел, все показатели страниц (ссылки, их вес в поисковой выдаче), останутся прежними.

Приведём простой пример. Было решено сменить название страницы с moya_infa.html на obo_mne.html. В таком случае нужно записать в.htaccess код: redirect 301 moya_infa.html http://www.moydomen.com/obo_mne.html.

Подобным образом производится и редирект 301 со страницы на страницу.

Перенаправление при смене расширения файла

Приведём ещё один пример. Веб-мастеру необходимо сменить расширение у файла moya_stranichka.html на moya_stranichka.php. Подобно прошлому пункту, прописываем в.htaccess такой код: redirect 301 moya_stranichka.html http://www.moydomen.com/moya_stranichka.php.

Редирект при партнёрских программах

Например, необходимо перенаправить посетителя сайта на страницу с партнёркой. Сама ссылка партнёрской программы выглядит как www.partner.com/?ref=16011. Заметив такую ссылку, многие посетители ресурса не будут переходить по ней, заранее догадавшись о ваших намерениях.

Для придания ссылке надлежащего вида нужно создать отдельную страничку, как пример dlya_druzei.html, с которой будет производиться редирект на страничку с партнёрской программой. Осталось лишь отредактировать файл.htaccess: redirect 301 dlya_druzei.html http://www.partner.com/?ref=16011.

Как произвести редирект 301 в CMS Joomla

Многие пользователи сети Интернет наверняка наблюдали страницу с ошибкой 404. В движке Joomla уже имеются несколько встроенных способов редиректа со страницы на страницу. Однако они работают не всегда. И являются очень трудными для понимания обычным пользователем. Тут на помощь придёт редирект 301. Joomla имеет в своём стандартном составе файл.htaccess, с которым можно производить все манипуляции, описанные выше.

Давайте произведём настройку для перенаправлений по всем страницам вашего интернет-проекта. Прежде всего, в каталоге нужно отыскать файл htaccess.txt и дать ему правильное название.htaccess. После этого в админке следует выставить в настройках перенаправлений включение ЧПУ (SEF) и поставить галочку на перенаправление URL.

Затем следует открыть файл.htaccess и прописать в нём правила для нужных перенаправлений.

Редирект с помощью PHP

Если по каким-либо причинам доступ к файлу.htaccess не существует либо закрыт, есть способ сделать по-другому редирект 301. PHP в этом поможет.

Для того чтобы произвести перенаправление с домена на домен с сохранением всех параметров, необходимо в любом редакторе текстов создать файл с расширением.php, назвать его index и скопировать туда следующий скрипт:

if ($ref!="") $ref="?".$ref;header("HTTP/1.1 301 Moved Permanently");

header("Location: http://moydomain.ru/".$ref);

Здесь moydomain.ru является доменом, на который осуществляется редирект. Полученный файл нужно закачать на сервер в главный каталог сайта.
Для того чтобы произвести редирект со страницы на страницу в пределах одного домена либо разных, нужно перед основным кодом переносимой страницы вставить следующее:

header("HTTP/1.1 301 Moved Permanently");

header("Location: http://www.moydomain.ru/moycategory/moypage.htm");

В результате www.moydomain.ru/moycategory/moypage.htm является новой страницей, на которую осуществляется перенаправление.

Важно принять во внимание, что страница, в код которой вставляется приведённый выше скрипт, должна иметь в конце названия расширение.php. Иначе придётся воспользоваться редиректом через.htaccess.

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

Как видим, перенаправления можно создавать не только с помощью файла.htaccess, но и через стандартные возможности многих CMS, и с помощью скриптов PHP.

Решила попробовать. Буду постить наблюдения, практическое применение и решение проблем по теме SEO и "я-вебмастер" по стопам собственного опыта. Не знаю, насколько меня хватит, время покажет.

Пояснительная преамбула: Я не специалист по поисковой оптимизации (SEO) и не программист. Всё здесь описанное - опыт и интуитивные соображения более-менее продвинутого пользователя.

Ещё: Отдельно хочу выразить благодарность ave за многоразовую помощь в реабилитации сайта:)

Итак, к теме

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

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

Что такое Redirect 301?

"Redirect" по-нашему "перенаправление", "переадресация". То есть, это такой код, с помощью которого мы сообщаем, что намерено и навсегда переадресовываем адрес (URL) страницы с прежнего места на новое. "Навсегда" можно отменить, удалив переадресацию.

301 - постоянная переадресация

302, 303 и 307 - временная переадресация

Для чего он нужен?

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

В любом случае, увидеть "404 ошибку" - это не прикольно, да и поисковики массовое наличие таких страниц на сайте рассматривают по-неприкольному - могут понизить ваш сайт в результатах выдачи поиска.


Скриншот из видео , в котором глава команды Google по борьбе с веб-спамом Мэтт Каттс (Matt Cutts) отвечает на вопрос "Какая доля веса PageRank теряется при 301 редиректе?"

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

В каких случаях на сайтах применяется перенаправление 301?

1. чтобы перенаправлять одну страницу сайта (ссылку) на другую
2. ссылки сайта с www перенаправлять на ссылки без www, или наборот
3. сделать массовую переадресацию ссылок в случае изменения домена или движка сайта

Это основные случаи. Мой случай - первый, его и рассматриваем.
Делается просто, но у меня простой вариант не сработал, пришлось пару часов погуглить в поисках верного варианта.

Делаем переадресацию 301

Делается это в файле.htaccess, который лежит в корневой папке сайта. Открываем его и вписываем туда наш редирект. Я прописывала сразу после RewriteBase /

сохраняем изменения в.htaccess. Всё. Проверьте, происходит ли со старой (не рабочей) ссылки переадресация на новую ссылку.

У меня этот вариант не сработал. Результат: переадресация не происходила, а в адрес ссылки дописывался параметр ?q= . Вот вариант, который у меня сработал. Уточняю: реализовано для сайта на Drupal

Код ответа 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:

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