Андрей Смирнов
Время чтения: ~11 мин.
Просмотров: 5

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

535312_thumb.pngElena_ZhmurinaЗнания Самостоятельная быстрая настройка редиректа для Nginx и Apache, а также с помощью PHP, HTML, JavaScript и cPanel. Разбираем на примере переадресации с www-домена на домен без www и наоборот.

7463.png

В статье:

  1. Зачем нужен 301 редирект

  2. Как настроить 301 редирект

  3. Создать код редиректа автоматически

Зачем нужен 301 редирект

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

Его применяют при переходе с HTTP на HTTPS, для перенаправления на домен с www или без, при переезде домена, удалении страницы с сайта, если пользователь еще может попасть на нее по ссылке на сторонних источниках, при переработке структуры и в других случаях.

Редирект для Nginx

Для серверов под Nginx нужно использовать файл nginx.config, добавьте код в секцию server. Если вы настроили виртуальные хосты, для каждого хоста нужно редактировать файлы отдельно.

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

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

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

server {#...      if($host~ * ^ [ ^ .] + .[ ^ .] + $) {          rewrite ^ (.*) $ $scheme: //www.$host$1 permanent;      }#...  }

Редирект для Apache

Если вы используете Apache, вам нужен файл .htaccess. Для доступа есть несколько вариантов:

  • Используйте FTP и включите отображение скрытых файлов. Найдите .htaccess в каталоге public_html в папке с названием домена.
  • Откройте панель управления хостингом, включите отображение скрытых файлов и найдите его через Диспетчер файлов.

На домен без www

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

На домен без www



На домен без www

На домен без www

На домен без www

  1. В списке выберите нужный домен.
  2. В поле «Перенаправляет на» пропишите его с префиксом http://.
  1. В списке выберите нужный домен.
  2. В поле «Перенаправляет на» пропишите его с префиксом http://www.

Создать код редиректа автоматически

К примеру, с этим справится генератор 301 Redirect Code от RapidTables. Есть возможность выбора: сформировать код для вставки в .htaccess, а также PHP, HTML, JavaScript и другой. Комментарии со ссылкой на инструмент можно удалить.

2282066a90ddd4123d432646f7d1f5b5.jpg
Генератор RapidTables

301 Redirect Generator от Webworkshop предлагает сформировать код для редиректа со страницы на страницу, с домена на домен и с директории на директорию. Отдельно есть окно для перехода на домен с www. Для редиректов на домен есть только код для Apache .htaccess, для страниц есть возможность выбора.

49500b1b83271bc895e1752d9017891a.jpg
Генератор от Webworkshop

Batch RewriteRule Generator позволяет настраивать редиректы для доменов или страниц пакетно: введите список URL-адресов с табуляцией или пробелами, можно скопировать пары из таблицы Excel, и генератор выдаст нужный код.

94c67f9864216626c36a67c5165dfb86.jpg
Batch RewriteRule Generator

Почитать по теме:Как склеить домены для Яндекса и Google: руководство по переносу сайта

Что такое Переадресация домена?

Услуга «Переадресация домена» (называемая также Web-forwarding, URL-forwarding, Web-redirect, HTTP-redirect) позволяет настроить переадресацию с одного домена на другой, а также на веб-страницу с другим адресом.

При настройке переадресации используется 301 редирект.

Примеры переадресаций

  • с домена mysite.ru на домен my-new-site.ru;
  • с домена mysite.ru на страницу my-new-site.ru/shop.

Все пользователи, набравшие адрес вашего домена (или пришедшие на него по ссылке), попадут на веб-страницу, адрес которой вы укажете в настройках услуги «Переадресация домена». Использование услуги позволит вам иметь постоянный адрес веб-страницы, который не придется менять при смене провайдера.

Услуга «Переадресация домена» может также использоваться при регистрации дополнительного доменного имени для уже существующего веб-сайта.

Внимание

  • Установка SSL-сертификатов на услугу веб-форвардинг невозможна. Поэтому перенаправление с https://mysite.ru/ не производится.
  • Настроить перенаправление с поддомена (например, с subdomain.domain.ru) на какую-либо страницу невозможно.

Зачем нужна переадресация домена?

В качестве примера предлагаем рассмотреть такую ситуацию:

У вас есть домен mycompany.ru, на котором полноценно работает сайт. На нём есть раздел продукции одного из ваших поставщиков. Адрес этой страницы: www.mycompany.ru/mybrand/index.html или подобный.

Для лучшего продвижения товара этого поставщика вы приобретаете целевое доменное имя: mybrand.ru и заказываете для него услугу «Переадресация домена» на адрес уже существующего раздела на вашем основном сайте: www.mycompany.ru/mybrand/index.html.

Теперь посетители могут набирать прямой адрес сайта бренда mybrand.ru, а вы использовать этот адрес в прямой рекламе продукции этого бренда. Легче запомнить адрес – выше эффективность!

Виды Переадресации домена

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

Пример:
  • настроена переадресация site1.ru — site2.ru;
  • посетители видят в строке браузера: site2.ru.

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

Пример:
  • настроена переадресация site1.ru — site2.ru;
  • посетители видят в строке браузера: site1.ru.

Техническая справка

Необходимо помнить, что если вы выбираете «маскировку адреса во фрейме», и хотите установить на вашей веб-странице ссылки на другие ресурсы, в теге ссылки необходимо указать target=_top. В противном случае чужая веб-страница также будет открыта внутри вашего фрейма, и посетитель будет видеть в строке браузера URL-адрес вашего домена. Также необходимо иметь в виду, что истинный адрес веб-страницы, на которую осуществляется перенаправление, хотя и не отображается в строке браузера, все же может быть легко вычислен любым посетителем.

Все запросы с одного адреса (например, http://faq-reg.ru) будут перенаправлены на соответствующие страницы другого адреса. Вы сможете настраивать множество перенаправлений с вашего домена (с разных адресов на базе домена).

Пример

Вы зарегистрировали домен newdomain.ru и ваш сайт находится по адресу http://mysite.narod.ru. Услуга позволит вам перенаправить запросы: с newdomain.ru, newdomain.ru/news, newdomain.ru/info и всех остальных страниц сайта на http://mysite.narod.ru.

О настройке различных вариантов услуги «Переадресация домена» читайте ниже в инструкции Как настроить Переадресацию домена.

Как заказать Переадресацию домена?

  1. 1.Авторизуйтесь в Личном кабинете REG.RU.
  2. 2.

    Кликните по домену, для которого хотите подключить услугу:

  3. 3.

    Пролистайте открывшуюся страницу вниз и напротив «Переадресация домена» нажмите Заказать:

  4. 4.

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

  5. 5.

    Проверьте позиции в корзине и нажмите Оплатить:

  6. 6.Выберите удобный способ оплаты и оплатите выставленный счет.

Готово! Теперь услуга доступна в вашем Личном кабинете.

Как настроить Переадресацию домена?

С помощью услуги «Переадресация домена» вы можете настроить следующие виды переадресации:

  • одиночное перенаправление конкретного адреса;
  • одиночное перенаправление с маскировкой адреса во фрейме;
  • массовое перенаправление всех страниц.

Подробнее про каждый способ.

Для корректной работы услуги, для домена должны быть прописаны бесплатные DNS-серверы (ns1.reg.ru и ns2.reg.ru). Если для домена прописаны другие DNS-серверы, воспользуйтесь инструкцией:

  1. 1.Авторизуйтесь в Личном кабинете.
  2. 2.Кликните по имени домена, для которого подключена услуга «Переадресация домена».
  3. 3.

    Во вкладке «Управление» в блоке «DNS-серверы и управление зоной» нажмите Изменить:

  4. 4.

    Выберите DNS-серверы ns1.reg.ru и ns2.reg.ru:

Готово, вы изменили DNS-серверы. Если ранее вы использовали другие DNS-серверы, изменения вступят в силу в течение 24 часов.

Чтобы настроить переадресацию с одного домена на другой:

  1. 1.

    Перейдите к списку услуг и кликните по названию услуги Web-forwarding:

  2. 2.

    Во вкладке «Управление» пролистайте страницу вниз и в блоке «Перенаправления» нажмите Добавить:

  3. 3.

    В шторке справа выберите нужное перенаправление:

  4. 4.

    Заполните необходимые поля:

    • в поле «С адреса» укажите относительный адрес (без имени вашего домена), с которого требуется перенаправлять посетителей;
    • в поле «На адрес» укажите имя сайта, на который будут перенаправлены посетители.

    Нажмите Готово:

Готово. Одиночная переадресация с одного домена на другой настроена. Перенаправления других видов настраиваются аналогичным образом.

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

В коде head автоматически добавляется метатег:

meta name=“viewport” content=“width=device-width, initial-scale=1.0”

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

Если при подключении маскировки адреса во фрейме, ваш сайт не масштабируется на мобильных устройствах или масштабируется неправильно — значит он не адаптивен.

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

Не работает Переадресация домена

  1. 1.

    Убедитесь, что для домена прописаны DNS-серверы ns1.reg.ru и ns2.reg.ru: Как узнать, какие DNS-серверы прописаны для домена;

    Если для домена прописаны другие DNS, их необходимо изменить на ns1.reg.ru и ns2.reg.ru: Как прописать DNS для домена в Личном кабинете REG.RU;

  2. 2.

    Убедитесь в том, что услуга активна. Для этого перейдите в Личный кабинет, найдите нужную услугу переадресации. Зелёный значок указывает, что услуга активна:

  3. 3.

    Убедитесь, что в поле перенаправление указан корректный адрес, откуда происходит перенаправление:

    Если это не так, удалите перенаправление и настройте его еще раз по инструкции.

Как удалить Переадресацию домена?

Обратите внимание: при удалении услуги «Переадресация домена» средства не возвращаются.

  1. 1.Перейдите в Личный кабинет.
  2. 2.Кликните на название услуги, которую вы хотите удалить
  3. 3.

    Во вкладке «Операции» нажмите Удалить услугу:

  4. 4.Подтвердите удаление услуги.

Готово! Услуга будет удалена в течение 15 минут.

732 —>

Не нашли ответа на свой вопрос?

Заявка в службу поддержкиТипы редиректов paragraph.png</span>

Есть несколько типов редиректов, рассмотрите каждый из них в кратце, чтобы определить какой из них вам больше подходит.

Редирект через htaccess — самый популярный, и довольно простой способ. Чтобы его сделать, вам понадобится создать в папке сайта файл с названием .htaccess (обратите внимание, что название файла начинается с точки, это не опечатка). Если вы используете CMS WordPress или Joomla, то скорее всего этот файл у вас уже есть, в этом случае вам нужно будет просто отредактировать его. Читайте ниже чтобы узнать какие именно инструкции в нем нужно прописать, чтобы создать перенаправление.

Редирект при помощи PHP — подойдет в том случае, если вы разбираетесь в PHP и знаете структуру своего сайта. Этот вариант подойдет вам, если ваш сайт написан не на CMS. В ином случае лучше используйте редирект через htaccess.

Редирект HTML — если у вас простой HTML сайт и вам нужно сделать перенаправление для одной страницы — это самый простой вариант. Сделать перенаправление для всего сайта этим способом будет трудозатратно, особенно если у вас на сайте больше 10 страниц.

Редирект при помощи JavaScript — этот способ подойдет также в том случае, если у вас простой сайт, либо если нужно сделать редирект для одной — двух страниц, либо для всего сайта в целом.

Редирект при помощи .htaccess файла paragraph.png</span>

Инструкции, которые вы увидите ниже, нужно прописать в файл .htaccess в самое начало.

  1. Редирект всего сайта (всех страниц) на другой сайт Redirect / http://new-site.ru/ В этом примере, перенаправление будет происходить на сайт new-site.ru
  2. Редирект одной страницы на другую Redirect /page-1.html /page-2.html В этом примере, перенаправление будет происходить со страницы page-1.html на страницу page-2.html. Обе страницы должны располагаться на одном домене.Этот вариант подходит для замены старых страниц сайта на новые.
  3. 310 редирект с www на без www В этом примере, посетители будут перенаправляться с http://www.example.ru на http://example.ru.
  4. 310 редирект с одной страницы на другую Redirect 301 /blog/page-1.html http://example.com/page-2.htm В этом примере, посетители будут перенаправляться со страницы blog/page-1.html на example.com/page-2.htm.
  5. Редирект ошибки 404 ErrorDocument 404 /index.html Пропишите эту строку в .htaccess файле, и тогда все посетители, которым встретится ошибка 404, будут перенаправлены на index.html.
  6. Редирект с HTTP на HTTPS Пропишите эту строку в .htaccess файле, и тогда все посетители вошедшие на сайт по протоколу HTTP будут перенаправляться на защищенный протокол HTTPS. Если вы прописываете редирект для WordPress, то обратите внимание на то, что в файле уже есть строка RewriteEngine On. Поэтому сразу под ней вам нужно добавить такие строки

PHP редирект paragraph.png</span>

В PHP редирект делается так: сервер отправляет заголовки headers браузеру посетителя, и тот переходит по нужному адресу автоматически. Стоит отметить важный момент, отправлять заголовки можно только до вывода другой информации. То есть они должны отправляться до вывода любой другой информации через echo и до отправки кук.

  1. Редирект на другой сайт <? header(» Location: http://example.com «); В этом примере, перенаправление будет происходить на сайт http://example.com
  2. Редирект на страницу другого сайта <? header(» Location: http://example.com/page.html «); Здесь перенаправление будет происходить на http://example.com/page.html
  3. Редирект определенной страницы на страницу другого сайта <? if( $_SERVER[‘REQUEST_URI’] === ‘blog/post-1.html’ ){ header(» Location: http://example.com/page.html «); } Здесь если посетитель сайта зайдет на страницу blog/post-1.html то он будет перенаправлен на http://example.com/page.html

HTML редирект paragraph.png</span>

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

  1. Редирект на другой сайт В этом примере, перенаправление будет происходить на сайт https://yutex.ru с задержкой в 5 секунд. Если установить значение задержки вместо 5 в 0, то посетитель будет перенаправляться на другой сайт моментально.
  2. Редирект на страницу другого сайта Здесь перенаправление будет происходить на https://yutex.ru/index.html и без задержек.

JavaScript редирект paragraph.png</span>

  1. Редирект на другой сайт Перенаправление сработает на сайт yandex.ru.
  2. Редирект на другой сайт с задержкой Этот код делает то же самое что и предыдущий, но с задержкой в 5 секунд.
  3. Вариант для jQuery Замените example.com на свой домен, на который нужно перенаправить посетителя.

Используемые источники:

  • https://pr-cy.ru/news/p/7463-kak-nastroit-redirekt-samostoyatelno
  • https://www.reg.ru/support/domains/dopolnitelnye-uslugi-dlja-domena/chto-takoe-web-forvarding
  • https://yutex.ru/redirect/kak-sdelat-redirect-vse-vidi.html

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации