Реализация 301 редиректа на сайте .htaccess


Зачем вообще использовать 301 редирект?

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

Что это за зверь такой «РЕДИРЕКТ» - это способ перенаправления на другой url отличный от первоначально запрошенного. А ответ в заголовке «302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)» говорит что новый адрес является постоянным и старый считается устаревшим , данный редирект передает около 90% ссылочного веса.

И так с помощью файла htaccess мы можем реализовать несколько распространённых вариантов:

Перенаправление (редирект) с одной страницы на другую:

Redirect 301 /oldpages.html /newpages.html

При использовании MODX столкнулся что редирект с страницы на страницу надо делать с небольшим изменением что бы при редиректе не добавлялось к адресу страницы «?q=url»

RewriteRule ^oldpages.html$ articles/newpages.html [R=301,NC,L]

Редирект при смене расширения файлов (например вы поменяли CMS и у страниц изменилось только расширение):

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

Вы изменили URL каталога и помелось только часть адреса

RewriteRule ^(.*)/old-news/(.*)$ $1/new-news/$2 [R=301,L]

Ну и конечно самое не любимое это в случае переезда сайта на новый домен:

RewriteCond %{REQUEST_FILENAME} robots.txt$ [NC]
RewriteRule ^([^/]+) $1 [L]
RewriteCond %{HTTP_HOST} !^www\.exemple\.com
RewriteRule ^(.*)$ http://www.exemple.com/$1 [R=301,L]

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

http://www.webconfs.com/htaccess-redirect-generator.php
http://www.rapidtables.com/web/tools/redirect-generator.htm

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

http://www.internetmarketingninjas.com/header-checker/
http://bertal.ru

И главное не надо использовать:

  • Многошаговый редирект
  • Использование редиректов без смены ссылок на новые адреса
  • Редирект на страницу которая не возвращает ответ сервера 200
  • Использование редиректа для robots.txt
#htaccess

Copyright © 2013-2017