Мы используем cookie-файлы
Мы используем файлы cookie для обеспечения правильной работы нашего сайта, чтобы сделать нашу коммуникацию еще лучше! Используя сайт без изменения настроек, вы даете согласие на использование ваших cookie-файлов.
Принять
Настройки
Мы используем cookie-файлы
Настройки
Мы используем cookie-файлы
Мы используем файлы cookie для того, чтобы предоставить Вам больше возможностей при использовании сайта.

Как настроить 301 редирект в файле .htaccess

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

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

301 редирект - это автоматическое перенаправление пользователей с одного URL адреса на другой.

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

Также 301 редирект необходимо настраивать на стороне сервера для склейки зеркал сайта, например с www на без www, с http на https протокол и со страниц без / на страницы со / в конце.

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

https://site.ru/
https://www.site.ru/
https://site
https://www.site.ru/
http://site/
http://site
http://www.site
http://www.site/
https://site/index.php
https://site/index.htm
и т.д.

И все страницы будут дублировать главное зеркало https://site/.

Как настроить 301 редирект через .htaccess

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

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

Спецсимволы

Модификаторы

Флаги для дополнительных опций в правилах

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

RewriteCond %{REQUEST_URI} ^/page/$
RewriteRule ^.*$ https://site.ru/new-page/? [R=301,L]

301 редирект с без www на www

RewriteCond %{HTTP_HOST} ^site\.ru$ [NC]
RewriteRule ^(.*)$ https://www.site.ru/$1 [R=301,L]

301 редирект с www на без www

RewriteCond %{HTTP_HOST} ^www.site\.ru$ [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

301 редирект на страницы со слешем "/" в конце

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..{1,10}$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ https://www.site.ru/$1/ [L,R=301]

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

RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{HTTP} =on
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

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

RewriteCond %{HTTPS} "on"
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA]

301 редирект с .php на саму папку

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ https://site.ru/ [R=301,L]

#Для всех страниц с index.php
RewriteRule ^(.*)index\.php$ https://site.ru/$1 [R=301,L]

301 редирект со страниц с GET-параметрами

Для примера берем следующий адрес страницы:
http://www.site.ru/category/index.php?sort=price
RewriteCond %{QUERY_STRING} ^sort=price$ [NC]
RewriteRule ^category/index\.php$ /new/sef/? [R=301,L]
После настройки редиректов необходимо обязательно проверить корректность кода ответа сервера, чтобы нужные страницы и главное зеркало сайта отдавали 200 код ответа и были доступны для пользователей и поисковых систем.

Также необходимо проверить, чтобы все внутренние ссылки на сайте также отдавали 200 код ответа.
Пожалуйста, оцените статью
Читайте далее
Показать еще
Автор статьи
Дмитрий Лашманов
SEO-специалист
Опыт работы в SEO 4 года
60+ реализованных проектов

Дополнительные курсы:

SEO в СНГ - Rush Academy
SEO на запад - Rush Academy
UX/UI-дизайн - Skillbox
Школа экспертов Нетологии