ru/en
Menu
01 апр 2025, 07:48

Что такое 301 редирект и как его настроить

Илья Гуренков

301 редирект (постоянный редирект) — это код ответа сервера, который сообщает поисковым системам и браузерам, что страница или ресурс был перемещен на новый адрес. Это одно из ключевых средств в SEO, позволяющее сохранить текущие позиции сайта и избежать потери трафика при изменении URL-адресов или структурирования сайта.

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

Что такое 301 редирект и как его настроить

Что такое переадресация 301

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

Редирект 301 является постоянным перенаправлением. В отличие от редиректа 302, который используется для временных перемещений, редирект 301 говорит поисковым системам, что адрес изменен на постоянной основе. Это важно для SEO, так как сохранение ссылочного веса помогает поддерживать текущие позиции сайта в поисковой выдаче.

Альтернативные методы переадресации

Существует несколько типов редиректов, которые используются в разных ситуациях.

  • Редирект 302 (временный): Используется, когда страница временно перемещена и поисковым системам не нужно передавать ссылочный вес.
  • Редирект 307: Это временный редирект, который в основном используется с протоколом HTTPS.
  • Метод JavaScript: Используется для перенаправлений на уровне клиентской стороны. Такой редирект не передает поисковым системам информацию о перемещении страницы, что может негативно сказаться на SEO.

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

В каких случаях используется постоянный редирект 301

Постоянный редирект 301 используется в следующих ситуациях:

  1. Изменение URL страницы: Если структура URL на сайте изменяется (например, на более короткие или дружественные для пользователей адреса), нужно настроить редиректы с старых URL на новые.
  2. Перемещение на новый домен: Когда сайт переезжает на новый домен, необходимо настроить редиректы с прежних URL на новые.
  3. Удаление страницы: Когда страница больше не существует, важно настроить редирект на актуальную или более релевантную страницу, чтобы сохранить SEO-ценность.
  4. Миграция сайта на HTTPS: Когда сайт переходит с HTTP на HTTPS, важно настроить редирект для всех страниц.
  5. Склейка зеркал сайта: Когда сайт имеет несколько версий (например, с www и без www), необходимо настроить редирект для устранения дублирования контента.

Создание постоянной переадресации 301 через настройки и плагины CMS

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

Настройка в популярных CMS

  1. WordPress: В WordPress можно использовать плагины, такие как Redirection или Yoast SEO, которые позволяют легко настроить 301 редирект для страниц.
  2. Joomla: В Joomla для настройки редиректов используется плагин ReDJ, который позволяет создавать редиректы на основе правил.
  3. Drupal: В Drupal есть модуль Redirect, который помогает управлять перенаправлениями на сайте.

Настройка 301 редирект в htaccess

Файл .htaccess — это конфигурационный файл на сервере, который используется для настройки редиректов, защиты от несанкционированного доступа и других серверных операций. Вот несколько примеров настройки 301 редиректов через .htaccess:

Склейка зеркал сайта www без www

Чтобы сделать сайт доступным только через один домен (например, без www), добавьте следующее в файл .htaccess:

apache

RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]

RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

Редирект с http на https для всего сайта

Если ваш сайт переходит на безопасный протокол HTTPS, используйте следующий код:

apache

RewriteEngine OnRewriteCond %{HTTPS} off

RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Постранично

Редирект для конкретной страницы осуществляется так:

apacheRedirect 301 /old-page.html http://example.com/new-page/

Для одной страницы

Чтобы перенаправить одну страницу на другую, укажите старый и новый URL:

apache

RewriteRule ^old-page$ https://example.com/new-page [L,R=301]

Редирект сайта с https на http

Если вы хотите вернуться на старый протокол HTTP:

apache

RewriteCond %{HTTPS} onRewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Изменение домена

Если ваш сайт переезжает на новый домен:

apache

RewriteEngine OnRewriteCond %{HTTP_HOST} ^old-domain\.com$ [NC]

RewriteRule ^(.*)$ http://new-domain.com/$1 [L,R=301]

Редирект на страницу с другим URL без параметров

Для редиректа на страницу без параметров добавьте следующее:

apache

RewriteRule ^old-page$ https://example.com/new-page [L,R=301]

Редирект для URL с параметрами

Для редиректа с учетом параметров URL:

apache

RewriteCond %{QUERY_STRING} ^id=(.*)$RewriteRule ^old-page$ https://example.com/new-page?id=%1 [L,R=301]

Редирект с index.php на главную страницу

Если на сайте есть URL с index.php, вы можете перенаправить его на главную страницу:

apache

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/

RewriteRule ^index\.php$ https://example.com/ [R=301,L]

Редирект со страниц с слешем на без слеша для всего сайта

Чтобы удалить слеш в конце URL:

apache

RewriteRule ^(.*)/$ https://example.com/$1 [L,R=301]

Редирект со страниц без слеша на слеш для всего сайта

Чтобы добавить слеш в конец URL:

apache

RewriteRule ^([^/]+)/$ https://example.com/$1/ [L,R=301]

301 редирект с 404 Not Found

Если страница не существует, можно настроить редирект на главную или другую страницу:

apache

RewriteCond %{REQUEST_URI} ^/nonexistent-page$

RewriteRule ^.*$ /404 [L,R=301]

Финальный вид файла htaccess

Пример финального файла .htaccess может выглядеть так:

apache

RewriteEngine OnRewriteCond %{HTTPS} off

RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]

RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

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

Синтаксис для регулярных выражений в htaccess

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

apache

RewriteCond %{REQUEST_URI} \d+

RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

Другие способы создания переадресации 301

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

Через PHP

php header(«Location: http://example.com/new-page», true, 301);exit(); 

ASP редирект

 Asp Response.Status = «301 Moved Permanently»Response.AddHeader «Location», http://example.com/new-page 

ASP.NET редирект

 csharp Response.Redirect(«http://example.com/new-page», true); 

ColdFusion редирект

 

cfml <cfheader name=»Location» value=»http://example.com/new-page»><cfabort> 

JSP Java редирект

 

Java response.sendRedirect(«http://example.com/new-page»); 

CGI скрипт на PERL

 

Perl print «Location: http://example.com/new-page\n\n«; 

Ruby on Rails

 

ruby redirect_to «http://example.com/new-page», status: :moved_permanently 

Редирект в Nginx

 

nginx server {    listen 80;    server_name example.com;    rewrite ^/old-page$ /new-page permanent;}

HTML редирект

 html <meta http-equiv=»refresh» content=»0; url=http://example.com/new-page»> 

Редирект 301 в панелях управления сервера

Cpanel

В панели Cpanel можно создать редирект через раздел Redirects. Здесь можно указать старый и новый URL, а также выбрать тип редиректа — 301.

ISPmanager

В ISPmanager настройка редиректов осуществляется через раздел Редиректы в меню настроек веб-сервера.

Автоматическое создание переадресации

Автоматическое создание редиректов обычно доступно через плагины или скрипты, которые могут помочь настроить массовые переадресации.

Проверка корректности настроек 301 редиректа

После настройки редиректов необходимо проверить, правильно ли работает перенаправление. Это можно сделать с помощью инструментов, таких как Screaming Frog SEO Spider, Google Search Console и других, которые помогут убедиться, что редиректы правильно настроены и не вызывают ошибок.

Заключение

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

Популярные статьи автора

Наш Telegram-канал

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

Бесплатный аудит

Никита Шваков
Никита Шваков
Основатель I-SEO
Заполните форму или напишите в удобный мессенджер
Я соглашаюсь с политикой конфиденциальности и даю согласие на обработку персональных данных