301 редирект

301 redirect Вода

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

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

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

Важно: основные правила скрыты в спойлере «Нажмите на плюс», — просто нажимаешь и выкатывается список. Если тебе покажется это неудобным, то напиши, пожалуйста, об этом в комментарии.

Ниже, в статье о 302 и 307 редиректах, есть видео на английском языке, не поленись посмотреть его! Главное — не забудь поставить субтитры на русский язык.

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

Содержание
  1. Что такое 301 редирект
  2. Как проверить
  3. Как проверить редирект онлайн-сервисами
  4. Примеры 301 редиректа в htaccess
  5. С http на https
  6. С https на http
  7. 301 редирект с WWW на без WWW
  8. С без WWW на WWW
  9. Редирект с сайта на сайт
  10. Переадресация с одной статической страницы на другую
  11. Постраничный редирект
  12. Перенаправление с index.php на главную
  13. 301 редирект на главную
  14. C 404 на главную
  15. С 404 на главную через 301 редирект
  16. С 404 на заранее подготовленную
  17. Редирект со страниц без слеша на слеш
  18. Редирект на поддомен
  19. 301 или 302 редирект: в чем разница
  20. 302 и 307 редирект
  21. 301 редирект в WordPress
  22. Редирект на PHP
  23. Плагины для 301 редиректа WordPress
  24. 301 редирект Битрикс
  25. 301 редирект в Bitrix на адрес с www
  26. C WWW на без WWW
  27. Примеры 301 редиректов для Nginx
  28. 301 редирект с http на https
  29. С WWW на без WWW
  30. 301 редирект с без WWW на WWW
  31. Редирект для одной страницы
  32. Редирект с одного домена на другой
  33. Редирект со слэша на без слэша
  34. Редирект с без слэша на со слэшем
  35. 301 редирект OpenCart
  36. 301 редирект для MODX (Evo)
  37. 301 редирект Joomla
  38. 301 редирект WIX
  39. 301 редирект UCOZ (ЮКОЗ)
  40. 301 редирект Тильда
  41. 301 редирект на веб-сервере Apache
  42. С WWW на домен без WWW
  43. С домена без WWW на домен с WWW

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

301 редирект (переадресация) — это перенаправление посетителей или поисковых роботов с одного URL-адреса на другой.

Например:

http://www.bolshakof.ru/ перенаправляет на http://bolshakof.ru/

Как проверить

Инструменты для проверки 301 редиректа (перенаправления) и получения полного ответа сервера по введённому вами URL будут особенно полезены вебмастерам, веб-программистам, а также активным интернет-пользователям.

Чти:   BERT объяснил: что нужно знать о новом алгоритме Google

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

С помощью онлайн сервисов можно:

  • проверить, выдаёт ли страница «Not found» код 404 на самом деле;
  • узнать, какой редирект настроен на сервере — 301-й или 302-й;
  • избежать неожиданностей при склейке PR;
  • узнать, куда ведёт ссылка, зашифрованная сокращателями вроде bit.ly и т.п. и куда ведёт ссылка в рекламном объявлении;
  • проверить редирект по партнёрской ссылке, не переходя по ней.

Как проверить редирект онлайн-сервисами

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

Источник
4web.su

Примеры 301 редиректа в htaccess

Прилагаю к ознакомлению регулярные выражения

^ — ограничение слева;
$ — ограничение справа;
* — 0 и более символов;
+ — 1 и более символов;
. — любой символ;
\ — экранирование;
() — переменная;
[] — диапазон значений.

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

Файл находится в главной категории вашего сайта. Это служебный файл, в котором мы будем указывать правила.
Нажмите на плюс

С http на https

RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

С https на http

Redirect HTTPS to HTTP
RewriteCond %{HTTP:X-Forwarded-Proto} =https
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

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

#1
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
RewriteRule ^(.*)$ http://bolshakof.ru/$1 [R=301,L]
#2
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
#3
RewriteEngine on
RewriteCond %{HTTP_HOST} !^site\.ru$ [NC]
RewriteRule ^(.*)$ http://bolshakof.ru/$1 [R=301,L]

С без WWW на WWW

#1
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.ru$ [NC]
RewriteRule ^(.*)$ http://www.bolshakof.ru/$1 [R=301,L]
#2
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]

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

301 перенаправление со всех страниц домена на другой домен.

RewriteCond %{REQUEST_URI} (.*)
RewriteRule ^(.*)$ http://bolshakof.ru/ [L,R=301]

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

Redirect 301 /was.php http://www.bolshakof.ru/new.php

Постраничный редирект

Redirect 301 /index http://bolshakof.ru/

Перенаправление с index.php на главную

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

301 редирект на главную

301 редирект со всех страниц одного домена на главную страницу другого домена.

    RewriteCond %{REQUEST_URI} (.*)
    RewriteRule ^(.*)$ http://mysite.com/ [L,R=301]

C 404 на главную

ErrorDocument 404 http://www.bolshakof.ru/301.html

С 404 на главную через 301 редирект

ErrorDocument 404 http://www.bolshakof.ru/301.html

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule 301.html http://www.bolshakof.ru/ [R=301,L]

С 404 на заранее подготовленную

ErrorDocument 404 /404.html

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

RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]

Редирект на поддомен

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

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^(.+).site.ru$
RewriteRule (.*) http://site.ru/$1?region=%1 [L,R=301,QSA]

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

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^poddomen.site.ru$ [NC]
RewriteRule (.*) http://site.ru/$1?region=poddomen [L,R=301,QSA]

301 или 302 редирект: в чем разница

  • При использовании 302 редиректа «пузомерки» и ссылочный вес не передаются новому URL. У 301 и 302 редиректов разница не наблюдается лишь насчет передачи трафика – в обоих случаях пользователь, использующий старую ссылку, всегда будет перенаправляться на новую страничку.
  • 301 и 302 редирект имеют отличия в восприятии исходной страницы ботами поисковиков. Если при 301 про старую страницу нужно забыть и больше никогда не пытаться на нее заходить, то 302 редирект – это указание не забывать и продолжать индексировать ее содержимое в независимости от продолжительности перенаправления.
  • Влияние на поисковую выдачу в зависимости от выбора 301 или 302 редиректа – различия будут касаться прекращения отображения старой страницы в результатах поиска (при 301-м) или же наличия в них обоих страничек (при 302-м).
  • Следует принимать во внимание, что используя 301 и 302 редирект, разница в риске попасть под фильтры поисковых систем довольно существенна.
    Если за 301-е перенаправление могут наказать лишь в случае выявления целенаправленных махинаций со склеиванием показателей и веса разных сайтов, то 302-й часто может быть распознан как элемент, который часто используется в черном SEO (как разновидность клоакинга).
  • При настройке 301 и 302 редиректов отличия отсутствуют. Используются одни и те же команды.
  • Пример удачного использования 302 редиректа – это страничка с акционными предложениями в интернет-магазине. Чтобы не переделывать постоянно основную страницу, наполненную контентом и продвигаемую в поисковиках, можно временно перенаправлять ее на странички со списками свежих акций, которые могут меняться даже ежедневно.

    Также следует остановить свой выбор на 302-м перенаправлении, если:

    • исходная страничка должна быть скрыта от глаз посетителей (находится в стадии доработки или внесения изменений);
    • важно чтобы старая страница продолжала индексироваться;
    • нужно, чтобы пользователи видели только новую страницу;
    • не критично отсутствие индексации конечной странички;
    • на исходной страничке размещены ссылки, которые должны и дальше индексироваться;
    • целевая страничка будет часто меняться.
    301 redirect 302 redirect
    Передает ссылочный вес да нет
    Индексация старой страницы нет да
    Наличие старой страницы в поиске нет да
    Риск попасть под санкции ПС минимален высок
    Источник
    seo-akademiya.com

    302 и 307 редирект

    307 Temporary Redirect
    Введен в RFC 2616 для устранения неоднозначности статуса 302, назначение которого было изменено. Этот статус означает, что запрошенный документ временно перемещен на другой адрес и запрошенный URL остается действительным.
    Реакция ботов та же, что и в случае 302.
    При последующих визитах бот будет сканировать основной (старый) адрес: предполагается, что новый адрес присвоен документу только временно и документ рано или поздно будет возвращен на старый адрес.
    Источник
    wiki.webimho.ru

    Видео о 307 редиректе. Включай субтитры и впитывай знания.

    301 редирект в WordPress

    Нажмите на плюс

    Редирект на PHP

    <?php
    // MyExampleFile.php
    header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.my-blog.com/a-new-destination"); 
    ?>

    Плагины для 301 редиректа WordPress

    Redirection

    Trash Duplicate and 301 Redirect

    All 404 Redirect to Homepage

    SEO Redirection Plugin

    301 редирект Битрикс

    Нажмите на плюс

    301 редирект в Bitrix на адрес с www

    В корневой директории сайта в файл .htaccess после строк

    Options -Indexes 
    ErrorDocument 404 /404.php
    

    Вставляем код

    
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^yousite.ru$ [NC]
    RewriteRule ^(.*)$ http://www.bolshakof.ru/$1 [R=301,L]
    
    

    C WWW на без WWW

    В корневой директории сайта в файл .htaccess после строк

    Options -Indexes 
    ErrorDocument 404 /404.php
    
    Вставляем следующий код (адресом сайта будет адрес yousite.ru (заменяем его на свой))
    
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^yousite\.ru$ [NC]
    RewriteRule ^(.*)$ http://bolshakof.ru/$1 [R=301,L]
    
    

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

    Нажмите на плюс

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

    server {
    if ($scheme = http) {
    return 301 https://$server_name$request_uri;
    }
    }
    

    Вариант 2:

    server {
    listen server_ip:80;
    server_name www.dh-agency.ru;
    rewrite ^ https://www.dh-agency.ru$request_uri? permanent;
    }
    

    С WWW на без WWW

    server {
    if ($host ~* www\.(.*)) {
    set $host_without_www $1;
    rewrite ^(.*)$ http://$host_without_www$1 permanent;
    }
    }
    

    Вариант 2

    server {
    server_name dh-agency.ru;
    rewrite ^/(.*)$ http://dh-agency.ru/$1 permanent;
    }
    

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

    server {
    server_name dh-agency.ru;
    rewrite ^/(.*)$ http://www.dh-agency.ru/$1 permanent;
    }
    

    Вариант 2

    server {
    listen 80;
    server_name www.dh-agency.ru;
    }
    

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

    server {
    if ( $request_filename ~ oldpage/ ) {
    rewrite ^ http://www.dh-agency.ru/newpage/? permanent;
    }
    }
    

    Вариант для папки:

    server {
    if ( $request_filename ~ oldfolder/.+ ) {
    rewrite ^(.*) http://www.dh-agency.ru/newfolder/$1 permanent;
    }
    }
    

    Редирект с одного домена на другой

    В server_name возможно указание алиасов и зеркал домена.

    server {
    server_name dh-agency.ru www.dh-agency.ru;
    rewrite ^ $scheme://www.new-dh-agency.ru;
    }
    

    Редирект со слэша на без слэша

    server {
    rewrite ^/(.*)/$ /$1 permanent;
    }
    

    Редирект с без слэша на со слэшем

    server {
    rewrite ^(.*[^/])$ $1/ permanent;
    }
    
    Источник: dh-agency.ru

    301 редирект OpenCart

    Можно применить стандартные настройки для файла .htaccess

    RewriteCond %{QUERY_STRING} ^_route_=адрес_старой_страницы.html$
    RewriteRule ^(.*)$ http://ваш_домен.ru/новой_страницы/? [R=301,L]
    

    301 редирект для MODX (Evo)

    Можно применить стандартные настройки для файла .htaccess

    RewriteRule ^old-page.html$ new-page.html [R=301,NC,L]
    

    301 редирект Joomla

    Можно применить стандартные настройки для файла .htaccess
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R,L]
    

    301 редирект WIX

    В Wix существует стандартная функция, позволяющая сделать 301 редирект

    • Переходим в режим управления сайта;
    • Находим раздел SEO и переходим в него;
    • Пролистываем страницу вниз до блока «Переадресация: 301 редирект»;
    • Нажимаем «Настроить переадресацию»;
    • В соответствующие поля вводим старый и новый URL;
    • Нажимаем «Сохранить» и «Опубликовать».

    301 редирект UCOZ (ЮКОЗ)

    301 редирект Тильда

    Как сделать переадресацию с www на без www?

    Как сделать переадресацию с кодом 301 со старых ссылок на новые?

    301 редирект на веб-сервере Apache

    Как настроить 301 редирект на веб-сервере Apache?
    Допишите в файл .htaccess. Не забудьте заменить bolshakof.ru на URL-адрес вашего сайта.
    Нажмите на плюс

    С WWW на домен без WWW

    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www.example\.com$ [NC]
    RewriteRule ^(.*)$ http://bolshakof.ru/$1 [R=301,L]
    

    С домена без WWW на домен с WWW

    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^bolshakof\.com$ [NC]
    RewriteRule ^(.*)$ http://www.bolshakof.ru/$1 [R=301,L]
    

    Оцените статью
    Добавить комментарий

    1. Аватар
      Croco

      Привет!
      Надо сделать 301 редирект со всех страниц одной языковой версии на аналогичные страницы другой языковой версии одного и того же сайта.

      Т.е., например:
      чтобы с
      http://uatm.ua/ua/news/u-brenda-mms-problemy-s-torgovoy-markoy-v-shvetsii
      перенаправляло на
      http://uatm.ua/news/u-brenda-mms-pro…koy-v-shvetsii
      Ну и со всех подобных

      Что прописать htacces?
      Спасибо!

      Ответить
    2. Аватар
      acerus

      Удалил(скрыл) с сайта 20 000 лишних товаров 🙂

      Как итог звезданутое падение в посещаемости. Потом я сменил хостинг и удалил все не активные товары. И предыдущее падение показалось не таким звезданутым 🙂

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

      Кто что подскажет?

      Ответить
      1. Аватар
        Aijai

        acerus так а в чем проблема?
        Товары удалены, страниц нет, он их сам уберет из выдачи по мере сканирования.

        Ответить
    3. Аватар
      Умник

      Вот более красивое определение 🙂

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

      Ответить