Редиректы

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

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

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

Редирект (от англ. redirect — перенаправление) — это автоматическая переадресация посетителя с одного URL-адреса на другой. То есть при переходе на страницу, для которой настроен редирект, пользователь будет автоматически попадать на другую страницу. Как правило, для посетителей сайта этот переход остаётся незаметным.

Схема работы редиректа на уровне браузера

Представим, что вы настроили редирект со страницы мой-сайт.ру на тест-сайт.ру. В этом случае при каждом переходе на страницу мой-сайт.ру на техническом уровне будет происходить следующее:

  • 1. Браузер обратится к серверу, на котором расположены файлы сайта, с просьбой передать ему файл страницы мой-сайт.ру.
  • 2. Сервер ответит, что страница мой-сайт.ру в данный момент недоступна, но с нее настроен редирект на другую страницу — тест-сайт.ру.
  • 3. Браузер сделает новый запрос, чтобы получить файл страницы тест-сайт.ру.
  • 4. Сервер примет запрос и передаст браузеру этот файл.
  • 5. Браузер откроет страницу тест-сайт.ру для пользователя.

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

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

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

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

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

Самые распространенные случаи, в которых нужен редирект:

  • перенос сайта с одного домена на другой. Поскольку основная часть пользователей будет искать сайт по старому URL-адресу, важно настроить для него редирект на новый URL. Благодаря этому вы не потеряете трафик.
  • перенос отдельных страниц сайта. В некоторых случаях нужно перенести не весь сайт, а только определенные его страницы. Для этих целей также подойдет редирект.
  • переход с HTTP на HTTPS. В этом случае редирект позволяет перевести страницу с небезопасного HTTP-протокола на защищенный протокол HTTPS. Подробнее читайте в статье Как перевести сайт на HTTPS.
  • перевод домена с или на «www».

В зависимости от конкретной ситуации для настройки используют тот или иной вид редиректа. Рассмотрим, какие виды редиректов бывают.

Виды редиректов

Перед тем как приступить к настройке, определитесь, какой вид редиректа нужен в вашем случае. Ниже мы описали все основные виды редиректов.

300 Multiple Choice (множественный выбор) — это редирект, который сообщает, что по искомому запросу можно перейти не на одну, а на несколько страниц. С его помощью можно настроить перенаправление с основного URL на несколько других страниц, которые похожи по тематике, но отличаются по содержанию. Нередко редирект такого типа встречается на страницах «Википедии». Если какое-то слово или термин имеет несколько значений, вместо одной страницы с определением Википедия выдает страницу со ссылками на объяснение каждого варианта. В зависимости от искомого значения пользователь переходит по нужной ссылке.

301 Moved Permanently (навсегда перемещен) — это постоянный редирект. Используйте этот вид редиректа, если хотите переместить страницу на новый адрес насовсем. В этом случае вы сообщите поисковым системам, что стоит обратить внимание на новую страницу, а исходную можно полностью исключить из индексации. Если настроить редирект 301 некорректно, на странице будет отображаться ошибка 404. Индексация страниц с ошибками приводит к снижению SEO-показателей всего сайта.

302 Moved Temporarily (временно перемещен) — это временный редирект. Редирект 302 настраивают в том случае, когда на основной странице временно ведутся те или иные работы. Все файлы копируют и размещают по другому адресу на определенный период. При переходе на страницу с таким редиректом поисковые роботы сразу поймут, что она перенаправлена на другой ресурс только временно. Поэтому при следующем переобходе они вновь попробуют проиндексировать исходную страницу. И так пока контент не «вернётся» на исходную страницу.

303 See Other (просмотр другого) — это редирект на схожую по тематике страницу. С помощью 303-го можно перенаправить пользователя не на дубль исходной страницы на новом URL, а на совершенно другую страницу, но с похожей тематикой. Такой тип редиректа нередко используют в интернет-магазинах. Если какой-то товар временно недоступен для заказа, с его страницы настраивают редирект на страницу продукта со схожими характеристиками. Когда товар снова появляется на складе, редирект просто убирают.

305 Use Proxy (использовать прокси) — этот редирект отсылает браузер к использованию прокси-сервера. В этом случае при обращении браузера к странице в ответ приходит адрес прокси-сервера. Это значит, что к ресурсу можно подключиться только с помощью прокси — промежуточного сервера, который является посредником между пользователем и сервером, на котором хранятся файлы сайта. Прокси-подключение настраивают для защиты локальной сети от внешних подключений, экономии трафика (передачи данных в сжатом виде), кэширования данных и другого.

307 Temporary Redirect — временный редирект. Он сообщает поисковому роботу, что страница временно перенесена на другой URL и через некоторое время вновь будет доступна по старому адресу. Этот редирект похож на 302 Moved Temporarily, однако у него есть существенное отличие — 307 редирект сохраняет метод передачи запроса (GET, POST), который указывает поисковикам, что кешировать документ не нужно. Его используют для краткосрочного переезда, например небольших технических работ. Стоит отметить, что иногда проще на пару часов закрыть сайт на технические работы без редиректа.

Редирект rel=«canonical» — этот редирект предназначен только для поисковых роботов, посетитель при этом видит два дублирующихся ресурса одновременно. С его помощью владелец ресурса сообщает роботам, что у сайта есть несколько версий и они должны просканировать только приоритетную копию, которую владелец пометил как «canonical». Остальные страницы тоже доступны пользователям, но они не индексируются.

Также существуют 304-й и 306-й редиректы. Однако сейчас эти виды практически никто не использует. Некоторые браузеры даже не умеют интерпретировать код таких перенаправлений.

Самые популярные виды редиректов — 301 и 302. При этом чаще всего для переадресации url используют 301-й редирект. Для его настройки используют разные способы.

Основные способы настройки 301 редиректа

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

1) PHP. PHP-редирект прописывается в индексном файле (чаще всего его название — index.php). Для настройки нужно найти файл index.php в корневой папке сайта и вписать в него строку кода. Для настройки используют функцию header:

header($header)

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

2) .htaccess. .htaccess — этот системный файл, который принадлежит к корневой структуре сайта. Чтобы получить к нему доступ, нужно зайти в панель управления хостингом, на котором размещен веб-ресурс. Для настройки достаточно разместить в файле строку с соответствующим кодом. Например:

RewriteEngine On

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

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

3) HTML. Такой тип редиректа подойдёт для сайтов, которые написаны на языке HTML. Редирект настраивается в исходном коде страницы через индексный файл, который чаще всего называется index.html. Для настройки нужно добавить мета тег refresh:

<meta http-equiv="refresh" content="0;URL=http://site.ru" />

Это также достаточно «медленный» тип, так как он срабатывает из браузера.

4) JavaScript. Такой тип редиректа подойдёт для сайтов, которые написаны на языке JavaScript. Он настраивается в исходном коде страницы путём изменения текста между тегами head и /head. В этом случае перенаправление также срабатывает со стороны браузера — с низкой скоростью. Как правило, JavaScript настраивают в случаях, когда хотят перенаправить на страницу не сразу, а с задержкой. Пока происходит перенаправление, на странице отображается баннер с фразой: «Вы будете автоматически переадресованы на наш новый сайт».

Если вы используете Nginx, в его конфигурационном файле можно настроить Nginx redirect 301.

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

Как сделать 301 редирект и другие перенаправления? Выбор способа настройки редиректа зависит от ваших целей и опыта. Перед настройкой определите цель редиректа (перевод всего сайта на новый адрес, редирект со страницы на страницу или другое). После этого выберите, как вы будете работать — через панель управления хостингом или в коде. Также обратите внимание, на какой операционной системе работает ваш хостинг (Linux или Windows). После этого используйте подходящую для вашего случая инструкцию.

Через панель управления хостингом

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

  • Если вы планируете перенаправить на новый адрес весь сайт, вам подойдёт инструкция Редирект через панель управления.
  • Используйте инструкцию, чтобы настроить переадресацию на домен с «www».
  • Используйте инструкцию, чтобы сделать переадресацию на домен без «www».
  • Если вам нужно перевести сайт с HTTP на HTTPS, в зависимости от операционной системы хостинга, используйте инструкцию для Linux или для Windows. Внимание: перед настройкой редиректа проверьте, что для вашего сайта установлен SSL-сертификат.
  • Для перехода с HTTPS на HTTP используйте инструкцию.

Также вы можете удалить редирект в панели управления.

Через код сайта

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

Итак, редирект — это простыми словами перенаправление на другую страницу. С помощью наших инструкций вы сможете настроить переадресацию для нужного сайта или страницы.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Редирект через панель управления

Редирект (перенаправление) можно настраивать через хостинг-панели. Каждая панель управления веб-хостингом Рег.ру имеет инструмент для добавления редиректа.

Как открыть панель управления хостингом?

Внимание

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

Чтобы добавить в ispmanager редирект, следуйте инструкции ниже:

  • 1 Перейдите в раздел Сайты.
  • 2

    В строке домена, для которого нужно настроить редирект, нажмите на три точки и выберите Настройка редиректов:

    Настройка редиректов в ispmanager 6

  • 3

    Нажмите кнопку Создать:

    Создать редирект в ispmanager 6

  • 4

    Заполните поля:

    • Код — выберите тип перенаправления,
    • Путь — введите /, если нужно перенаправлять все страницы. Если редирект должен срабатывать с определенной страницы, укажите путь до нее. Например, если вы хотите переадресовать пользователя со страницы https://test.ru/contacts, то в поле путь укажите /contacts;
    • URL — укажите путь до страницы, на которую должен срабатывать редирект.

    Затем нажмите ОК:

    Настройка и сохранение редиректа в ispmanager 6

Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.

  • 1

    В разделе «Домены» выберите пункт Перенаправления:

    добавить редирект cpanel 1

  • 2

    Заполните поля:

    • Тип — выберите тип перенаправления,
    • https?://(www.)? — выберите домен, с которого должно срабатывать перенаправление;
    • / — если нужно перенаправлять все страницы, оставьте поле пустым. Если редирект должен срабатывать с определенной страницы, укажите путь до нее. Например, если вы хотите переадресовать пользователя со страницы https://test.ru/contacts, то в поле укажите contacts;
    • Перенаправляет на — укажите путь до страницы, на которую должен срабатывать редирект.

    Затем нажмите Добавить:

    добавить редирект cpanel 2

Нет необходимого домена в списке?

Перед добавлением редиректа домен, с которого будет происходить редирект, необходимо добавить в разделе Домены — Паркованные домены.

Через панель управления Plesk перенаправление можно задать только при добавлении домена. Если вам необходим редирект с уже добавленного домена, воспользуйтесь статьями Редирект через .htaccess или Редирект через web.config.

  • 1

    Во вкладке Сайты и домены выберите пункт Добавить домен:

    Редирект через панель управления 1

  • 2

    Заполните поля:

    • Имя домена — укажите домен, если нужно перенаправлять все страницы. Если редирект должен срабатывать с определенной страницы, укажите путь до нее. Например, если вы хотите переадресовать пользователя со страницы https://test.ru/contacts, то в поле укажите test.ru/contacts;
    • Тип хостинга — выберите Перенаправление;
    • Конфигурация DNS-сервера — отметьте пункт Активировать службу DNS:

    добавить редирект plesk 2

    • Конечный адрес — укажите путь до страницы, на которую должен вести редирект;
    • Тип перенаправления — укажите тип перенаправления.

    Затем нажмите OK:

    добавить редирект plesk 4

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Как сделать редирект в PHP

Читайте нашу статью, чтобы узнать, как сделать редирект PHP.

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

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

Редирект — это перенаправление пользователя с одной страницы на другую. Причём редирект можно настроить как на разные страницы одного сайта, так и на страницу другого сайта.

Основные виды редиректов:

  • 301 редирект — используется, когда страница окончательно перемещена на другой URL. При таком редиректе поисковики индексируют только новый вариант страницы — той, на которую попадает пользователь.
  • 302 редирект — используется, когда страница перемещена временно. В этом случае поисковые системы индексируют все варианты страницы: и старую, и новую.

Как сделать редирект в PHP 1

PHP location redirect

Для чего нужен редирект

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

  • замена движка сайта. Когда меняется архитектура сайта, появляется необходимость в настройке редиректа;
  • замена домена. После того как вы перенесли сайт на другой домен, прежний домен некоторое время ещё отображается в поисковике. Если сделать PHP-редирект, поисковик автоматически направит пользователя на новый домен;
  • изменение структуры ресурса. Пока вы меняете структуру сайта, можно создать копию старой версии и сделать на неё редирект;
  • при авторизации. Часто пользователи сайта разделяются на группы, например администратор и посетитель. Пользователи в разных группах имеют разные привилегии, поэтому безопаснее сделать редирект для каждой группы на нужную версию сайта;
  • переход на мобильную версию. Если посетитель сайта использует планшет или мобильный телефон, с таким редиректом он попадёт на версию, которая адаптирована под мобильные устройства;
  • перенос разделов на поддомены. Например, на странице вашего сайта site.ru/shop был каталог товаров. Но ассортимент расширялся, и со временем понадобилось перенести этот раздел на поддомен shop.site.ru. В этом случае редирект настраивается с site.ru/shop на shop.site.ru;
  • несколько доменов в разных доменных зонах. Предположим, вы разместили сайт на домене site.ru. При этом у вас есть ещё несколько доменов: site.com, site.info и site.biz. С доменов в зонах .com, .info и .biz можно настроить редирект на site.ru, чтобы у этого сайта росла посещаемость.

Как сделать редирект в PHP 2

Redirect PHP URL HTTP

Переадресацию можно настроить несколькими способами:

Чем отличается редирект PHP от HTML
PHP — серверный язык программирования. Это значит, что переадресация будет срабатывать не в коде страницы, а в скрипте, который размещен на сервере. По сути, вы добавляете в код индексного файла скрипт перенаправления. HTML — это язык разметки веб-страниц. Перенаправление можно сделать с помощью метатега, и редирект будет работать именно через код страницы.

Главная особенность редиректа на PHP в том, что переадресация прописана не в коде странице, а с помощью скрипта на сервере. Благодаря этому снижается восприимчивость к фильтрам поисковых систем.

Ниже мы подробнее рассмотрим принцип работы и настройку редиректа в PHP.

Как работает редирект в PHP

Предположим, вы сделали редирект со страницы index.php на index1.php. Когда пользователь откроет страницу с редиректом, в системе произойдёт следующее:

  • 1. Браузер запросит файл стартовой страницы index.php с сервера.
  • 2. Сервер, получив запрос от браузера, сообщит, что файл index.php больше недоступен и браузеру нужно искать новый файл index1.php.
  • 3. Браузер отправит новый запрос к серверу, на котором находится index1.php, и получит ответ.
  • 4. Браузер отобразит страницу index1.php.

Как настроить PHP-редирект

Прописывать редирект на сайт в PHP нужно в индексном файле. Чаще всего он называется index.php. Для настройки вам понадобится функция header( ). Она выглядит так:

header($header)

Где $header — строка HTTP-заголовка, который вы будете использовать. Для редиректа нужно использовать заголовок Location — он указывает на адрес целевого сайта.

Чтобы настроить редирект PHP:

  • 1 Откройте индексный файл страницы, с которой нужно сделать редирект.
  • 2

    Впишите следующие строки:

    <?php
    // index.php
    header(“Location: http://site.ru/index1.php”);
    exit( );
    ?>

    Где http://site.ru/index1.php — ссылка на индексный файл страницы, на которую ведёт редирект. Если на конечном сайте установлен SSL-сертификат, вместо http:// укажите https://. После этого сохраните изменения:

    Как сделать редирект в PHP 3

    Periodical readings PHP redirect

Готово, вы настроили редирект.

Как настроить редирект с задержкой

Иногда нужно, чтобы пользователь попал на страницу и только спустя несколько секунд перешел на конечный сайт. Такое перенаправление можно настроить в индексном файле с помощью функции sleep( ).

Чтобы настроить переадресацию с задержкой:

  • 1 Откройте индексный файл страницы, с которой нужно сделать редирект.
  • 2

    Добавьте строку:

    sleep(5);

    Где 5 — время ожидания в секундах. Полный код редиректа с задержкой будет выглядеть так:

    Как сделать редирект в PHP 4

    Celebrity PHP redirect

Готово, вы настроили редирект c задержкой.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Редирект через .htaccess

Редирект можно настроить разными способами: в панели управления хостингом, через код HTML, через PHP, с помощью web.config, через .htaccess, а также другими способами. Рассмотрим, в чём особенность редиректа через .htaccess и как настроить 301-й .htaccess-редирект с одной страницы на другую, а также Bitrix redirect.

Если вы ещё не знаете, зачем нужно перенаправление страниц сайта, читайте нашу статью Что такое редирект.

В каких случаях подойдет .htaccess-редирект

Чтобы понять, для каких целей лучше подходит .htaccess-редирект, разберёмся, что такое .htaccess.

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

Файл .htaccess позволяет вариативно настроить сайт. Действие команд из .htaccess распространяется на папки и подкаталоги, расположенные в одной директории с этим файлом. Если для какой-либо вложенной директории нужны иные инструкции, в ней также можно создать .htaccess. Если .htaccess расположен в корневой директории сервера, его действие распространяется на весь сервер, кроме тех директорий, где находится другой файл .htaccess.

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

Для чего нужен 301-й редирект

Помимо разных способов настройки переадресации, существуют разные виды редиректов. Каждый из них имеет своё кодовое название. Основные виды:

  • 300 — сообщает, что по искомому запросу можно перейти не на одну, а на несколько альтернативных страниц;
  • 301 — постоянный;
  • 302 — временный;
  • 303 — на схожую по тематике страницу;
  • 305 — отсылающий к подключению через прокси-сервер.

Также существуют 304-й, 306-й и 307-й редиректы. Однако сейчас эти виды практически никто не использует. Один из самых популярных видов — это 301-й.

301-й редирект (Moved Permanently) — это постоянный редирект. Используется для перемещения страницы на новый URL-адрес насовсем. Когда поисковые системы встречают страницу с редиректом 301, они «понимают», что теперь необходимо индексировать новую страницу, а старую можно полностью исключить из индексации. Если настроить переадресацию 301 некорректно, на странице будет отображаться ошибка 404. Индексация страниц с ошибками приводит к снижению SEO-показателей всего веб-ресурса.

Как сделать редирект через .htaccess

Чтобы сделать перенаправление 301 через .htaccess, перейдите в каталог сайта и откройте .htaccess. Если файла ещё не существует, создайте его. После этого добавьте в файл строки кода из подходящей инструкции ниже.

Обратите внимание

Кириллические домены (в зоне .РФ .РУС и др.) необходимо прописывать в коде в формате Punycode: Как перевести домен в Punycode.

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

1С-Битрикс — популярная CMS в которой время от времени необходимо настраивать перенаправление.

  • Если вы хотите переадресовать домен с WWW на без WWW, укажите:
RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} !^/bitrix/admin/1c_exchange\.php$ [NC] 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www.site\.ru$ [NC]
    RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
</IfModule>

Где www.site.ru — домен, с которого происходит редирект, а site.ru — домен, на который происходит редирект.

  • Если вам нужно сделать редирект Bitrix с домена без WWW на WWW, введите комбинацию:
RewriteCond %{ENV:HTTPS} on 
RewriteRule .* - [E=SSL:s] 
RewriteCond %{HTTP_HOST} !^www\.(.*) [NC] 
RewriteRule ^(.*)$ http%{ENV:SSL}://www.%{HTTP_HOST}/$1 [R=301,L]

Где www. — домен, с которого происходит редирект, а www. — домен, на который происходит редирект.

  • Если вы хотите настроить в Битрикс редирект на другую страницу с http:// на https://, пропишите:
RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} !^/bitrix/admin/1c_exchange\.php$ [NC] 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
301 редирект с одного домена на другой

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

RewriteEngine On
RewriteCond %{HTTP_HOST} old-site.ru
RewriteRule (.*) http://new-site.ru/$1 [R=301,L]

Где:

  • old-site.ru — домен, с которого происходит редирект;
  • new-site.ru — домен, на который происходит редирект.
301 редирект с одной страницы на другую

Добавьте в .htaccess следующие строки:

RewriteEngine On
RewriteCond %{HTTP_HOST} site.ru/old-page
RewriteRule (.*) http://site.ru/new-page$1 [R=301,L]

Где:

  • site.ru/old-page — адрес прежней страницы,
  • site.ru/new-page — адрес новой страницы.
301 редирект с домена с WWW на домен без WWW

Добавьте в .htaccess следующие строки:

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

Где site.ru — имя вашего домена.

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

Добавьте в .htaccess следующие строки:

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

Где site.ru — имя вашего домена.

301 редирект для отдельного IP

Добавьте в .htaccess следующие строки:

RewriteEngine On
RewriteCond %{REMOTE_ADDR} 123.123.123.123
RewriteRule ^(.*)$ http://site.ru [R=301,L]

Где site.ru — имя вашего домена.

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

Добавьте в .htaccess следующие строки:

RewriteEngine On
RewriteCond %{SERVER_PORT} ^443$ [OR]
RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

Где site.ru — имя вашего домена.

301 редирект с http:// на https:// для Linux

Добавьте в .htaccess код из нужного вам примера ниже:

  • Для всех страниц с http:// на https://

Для всех страниц с http:// на https://, в том числе и с http://www на https://

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Если первый вариант не поможет, воспользуйтесь вторым вариантом:

RewriteEngine On
RewriteCond %{HTTPS} =off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Если все варианты не помогли и возникает циклическая переадресация:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteEngine On 
RewriteCond %{ENV:HTTPS} !on 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
  • Перенаправление на https только выбранной страницы

В примерах ниже переадресация настраивается для страницы login.php:

RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Или:

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
  • Перенаправление на https всех страниц, кроме одной

В примере ниже редирект настраивается для страницы test.php.

RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/test.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
301 редирект с главной страницы, кроме остальных страниц сайта

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

RewriteEngine On
RewriteRule ^$ https://site.ru [R=301,L]
301 редирект со всех страниц сайта, кроме главной

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

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/$
RewriteRule ^(.*)$ http://site.ru/ [L,R=301]
301 редирект с GET-параметрами

Если вам необходимо сделать .htaccess редирект с get параметрами, укажите:

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

Где site.ru — имя вашего домена.

301 редирект с массовой склейкой

Если вам необходимо сделать .htaccess редирект на index php, введите:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/ 
RewriteRule ^(.*)index\.(php|html|htm)$ http://site.ru/$1 [R=301,L]

Где site.ru — имя вашего домена.

Внимание

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

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

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Редирект через web.config

Файл web.config доступен только для Windows хостинга. Для хостинга на Linux редирект настраивается через файл .htaccess.

Выберите необходимый тип редиректа и добавьте соответствующие строки кода в файл web.config.

Файл web.config расположен в директории вашего сайта. Если файла не существует, создайте его.

301 редирект с http:// на https://
Редирект для основного домена и всех поддоменов:
<?xml version="1.0" encoding="UTF-8"?>

<configuration>

    <system.webServer>

        <rewrite>
            <rules>
                <rule name="Redirect to https" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>


<configuration>

    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Redirect to https" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                        <add input="{HTTP_HOST}" pattern="^domain\.ru" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
301 редирект с домена с www на домен без www
<configuration>
<system.webServer>
<rewrite>
      <rules>
        <rule name="Imported Rule 1" stopProcessing="true">
          <match url="^(.*)$" ignoreCase="false" />
          <conditions logicalGrouping="MatchAll">
            <add input="{HTTP_HOST}" pattern="^www\.(.+)$" />
          </conditions>
          <action type="Redirect" url="http://{C:1}/{R:1}" redirectType="Permanent" />
        </rule>
      </rules>
</rewrite>
</system.webServer>
</configuration>
301 редирект на другой сайт

Вместо domain.ltd укажите название сайта, на которой необходим редирект:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="301 Redirect 1" stopProcessing="true">
          <match url=".*" />
          <action type="Redirect" url="http://domain.ltd" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>
Редирект с одной страницы на другую
  • редирект с domain.ltd/test.html на domain.ltd/test2.html:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
   <location path="test.html">
      <system.webServer>
        <httpRedirect enabled="true" destination="http://domain.ltd/test2.html" httpResponseStatus="Permanent" />
      </system.webServer>
    </location>
</configuration>

Вместо domain.ltd укажите название вашего сайта;

  • редирект с domain.ltd/?p=1520 на domain.ltd/test.html:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
    <rewrite>
      <rules>
        <rule name="301 Redirect 1" stopProcessing="true">
          <match url=".*" />
             <conditions>
                      <add input="{QUERY_STRING}" pattern="^p=1520" />
             </conditions>
          <action type="Redirect" url="http://domain.ltd/test.html" redirectType="Permanent" appendQueryString="false"  />
        </rule>
      </rules>
    </rewrite>
    </system.webServer>
</configuration>

Вместо domain.ltd укажите название вашего сайта. Если не требуется передавать значение «p=1520», указывается значение параметра «appendQueryString=„false“»;

  • редирект domain.ltd/test.aspx?id=1051 на domain.ltd/test/1051:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
    <rewrite>
      <rules>
         <rule name="301 Redirect 2" stopProcessing="true">
               <match url="(.+)\.aspx$" />
                   <conditions>
                        <add input="{QUERY_STRING}" pattern="^id=([0-9]+)" />
                   </conditions>
             <action type="Redirect" url="{R:1}/{C:1}" appendQueryString="false" />
          </rule>
      </rules>
    </rewrite>
    </system.webServer>
</configuration>

Вместо domain.ltd укажите название вашего сайта.

Как заставить html-страницы обрабатывать PHP код?
<?xml version="1.0" encoding="UTF-8"?>

<configuration>
    <system.web>
        <identity impersonate="false" />
    </system.web>
    <system.webServer>
        <handlers>
            <add name="PHP_via_FastCG1" path="*.htm" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP53\php-cgi.exe" resourceType="Either" />
            <add name="PHP_via_FastCG2" path="*.html" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP53\php-cgi.exe" resourceType="Either" />
        </handlers>
    </system.webServer>
</configuration>

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Как сделать редирект на HTML

Читайте нашу статью, если хотите узнать, что такое, для чего используется и как настроить редирект HTML.

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

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

Чаще всего используются такие редиректы:

  • 301 редирект — его настраивают, когда страница навсегда перенесена на другой URL. При таком редиректе поисковики индексируют только новый вариант страницы — на неё и попадает пользователь.
  • 302 редирект — его настраивают, когда страница перенесена временно. В этом случае поисковые системы индексируют и старый, и новый вариант страницы.

Для чего используют редирект

HTML redirect на другую страницу используют в таких случаях:

  • перенос сайта на другой домен. Лучше всего настраивать редирект на другой сайт, в тот момент, когда старый сайт еще ранжируется в поисковой выдаче;
  • использование устаревших браузеров. Если часть посетителей пользуется старыми версиями браузеров, у них может не быть поддержки файлов Cookie и могут не работать другие способы перенаправления;
  • показ новой информации с задержкой по времени — если нужно, чтобы редирект срабатывал не сразу. Допустим, вы проводите акцию на сайте и хотите привлечь к ней внимание. Для этого можно настроить переадресацию с главной страницы сайта на страницу акции;
  • перенаправление пользователя на другую страницу сайта. Например, после оплаты покупки.
  • перенос разделов на субдомены. Например, на странице вашего сайта site.ru/catalog был перечень услуг. Но набор услуг увеличивался, и со временем понадобилось перенести его на субдомен catalog.site.ru. В этом случае удобно настроить редирект с site.ru/catalog на catalog.site.ru;
  • перенаправление нескольких доменов на один основной. Клиентам бывает сложно запомнить домен сайта. Поэтому часто владельцы сайтов регистрируют помимо основного домена схожие с ним доменные имена и настраивают редирект на основной сайт. Так клиенты с большей вероятностью попадут на основной сайт.

Настроить перенаправление можно несколькими способами:

HTML-редирект может замедлить продвижение сайта в поисковых системах. Рекомендуем его использовать только при отсутствии поддержки PHP, на тарифе хостинга Host-Lite.

В инструкции ниже мы расскажем, как настроить редирект посредством HTML.

Что такое HTML-редирект

Редирект на HTML настраивается в коде индексного файла. Индексный файл чаще всего называется index.html. Внутри файла в блоке head нужно прописать специальный метатег Refresh. При использовании метатега Refresh перенаправление срабатывает в коде страницы. Это значит, что перенаправляет не скрипт на сервере, а именно браузер.

Допустим, вы сделали HTML-редирект со страницы index.html на new_index.html. В этом случае перенаправление будет работать по такой схеме:

  • 1. Браузер запрашивает файл стартовой страницы index.html с сервера.
  • 2. Сервер находит index.html и отвечает на запрос браузера.
  • 3. Когда браузер открывает страницу index.html, он «читает» строки кода, которые прописаны в файле. Когда он доходит до строки с HTML-редиректом, то видит в ней упоминание файла new_index.html.
  • 4. Браузер посылает запрос к серверу, на котором хранится new_index.html.
  • 5. Сервер находит эту страницу и отвечает на запрос браузера.
  • 6. Браузер открывает страницу new_index.html.

Метатег Refresh выглядит так:

<meta http-equiv="refresh" content="0;URL=http://site.ru"/>

Где:

  • content — время ожидания редиректа в секундах. Укажите 0, если хотите, чтобы перенаправление срабатывало сразу;
  • URL — ссылка на конечную страницу.

Как настроить HTML-редирект

  • 1 Откройте индексный файл.
  • 2

    Введите текст:

    <head>
    <meta http-equiv="refresh" content="0;URL=http://site.ru" />
    </head>

    Где:

    • 0 — время ожидания редиректа в секундах. Оставьте значение 0, если хотите, чтобы редирект срабатывал без задержки;
    • http://site.ru — ссылка на страницу, на которую должен вести редирект. Если на конечном сайте установлен SSL-сертификат, укажите https:// вместо http://.
  • 3 Затем сохраните изменения.

Код редиректа будет выглядеть так:

Готово, вы настроили HTML-редирект.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Редирект с HTTP на HTTPS для Linux

Обращаем внимание, что редирект стоит настраивать только в том случае, если в панели управления уже установлен SSL-сертификат: Как установить SSL-сертификат на хостинг?

Как настроить 301 редирект с HTTP на HTTPS

  • Если у вас на хостинге панель управления ispmanager, переадресацию можно настроить в несколько кликов средствами панели управления.
  • Если у вас на хостинге панель управления — cPanel или Plesk, редирект настраивается только через конфигурационный файл .htaccess

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

Откройте панель управления ispmanager и перейдите в раздел «Сайты». Выберите домен, который должен открываться по HTTPS, и нажмите на него двойным кликом:

Редирект с HTTP на HTTPS для Linux 1.png

Поставьте галочку напротив пункта Перенаправлять HTTP-запросы в HTTPS и нажмите ОК, чтобы сохранить изменения:

Редирект с HTTP на HTTPS для Linux 2.png

Готово, теперь ваш сайт будет работать по протоколу HTTPS.

Настройка редиректа в cPanel и Plesk

Как настроить 301 редирект в htaccess:

  • 1 Откройте вашу панель управления хостингом.
  • 2

    Откройте файл .htaccess. Он расположен в корневой папке сайта. Если файл .htaccess отсутствует, то причина может быть в том, что в cPanel не отображаются скрытые файлы. Чтобы отобразить скрытые файлы, воспользуйтесь инструкцией.

    Как открыть файл .htaccess

    Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.

    В cPanel файл .htaccess скрыт по умолчанию. Чтобы приступить к редактированию файла, в настройках измените видимость скрытых файлов. Для этого в разделе «Файлы» выберите Менеджер файлов, нажмите на кнопку Настройки, поставьте галочку в поле Показать скрытые файлы (dotfiles) и сохраните изменения:

    Скрытые файлы cpanel

    В разделе «Домены» выберите пункт Дополнительные домены. Нажмите по строке, где указана корневая папка домена. Затем нажмите правой кнопкой по файлу .htaccess и выберите в появившемся списке пункт Edit:

    htaccess cpanel

    Обратите внимание! Если внешний вид вашей панели управления отличается от представленного в инструкции, перейдите в раздел «Сайты и домены» и в правом верхнем углу измените вид на «Активный».

    Под нужным доменом нажмите по строке, где указана корневая папка домена. Откроется корневая папка вашего сайта. Найдите в списке файл .htaccess и кликните по нему левой кнопкой мыши:

    htaccess

  • 3

    Добавьте в конце файла .htaccess одно из правил, которое подходит для вашего случая:

    Редирект всех страниц с HTTP на HTTPS

    Редирект всех страниц с http:// на https://, в том числе и с http://www на https://

    Используйте вариант 1:

    RewriteEngine On
    
    RewriteCond %{SERVER_PORT} !^443$
    
    RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

    или воспользуйтесь вторым вариантом (если первый вариант не поможет):

    RewriteEngine On
    
    RewriteCond %{HTTPS} =off 
    
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

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

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

    или:

    RewriteEngine On 
    
    RewriteCond %{ENV:HTTPS} !on 
    
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    Редирект на HTTPS только выбранной страницы

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

    Вариант 1:

    RewriteEngine On
    
    RewriteCond %{HTTPS} =off
    
    RewriteCond %{REQUEST_URI} =/login.php
    
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

    Вариант 2:

    RewriteEngine On
    
    RewriteCond %{SERVER_PORT} !^443$
    
    RewriteCond %{REQUEST_URI} =/login.php
    
    RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
    Редирект на сайт HTTPS всех страниц, кроме одной

    В примере ниже редирект настраивается для страницы test.php.

    RewriteEngine On
    
    RewriteCond %{HTTPS} =off
    
    RewriteCond %{REQUEST_URI} !^/test.php
    
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
  • 4 Сохраните изменения.

Готово, теперь ваш сайт будет работать по протоколу HTTPS.

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

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Редирект с http на https для Windows

Чтобы ваш сайт всегда открывался по безопасному https:// протоколу, мы рекомендуем настроить переадресацию c http:// на https://. В этом случае даже если посетитель вашего сайта наберёт в строке браузера путь http://вашсайт, браузер его автоматически перенаправит на безопасный протокол https://вашсайт.

Для настройки переадресации необходимо добавить в файл web.config правила, которые вы найдёте ниже.

Файл web.config должен быть расположен в каталоге сайта, его можно узнать по инструкции. Если файла не существует, просто создайте его.

Перейдите в каталог сайта и добавьте в файл web.config следующие строки:

Редирект c http:// на https:// для основного домена и всех поддоменов

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Redirect to https" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Редирект c http:// на https:// для основного домена без поддоменов

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Redirect to https" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                        <add input="{HTTP_HOST}" pattern="^domain\.ru" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Читайте о том, как добавить редирект с http на https для Linux-хостинга в данной статье.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Редирект с HTTPS на HTTP

Обратите внимание!

Браузер проводит проверку наличия SSL-сертификата раньше, чем срабатывает редирект. Таким образом, если у вас нет активного SSL-сертификата, выпущенного удостоверяющим центром, посетители сайта будут видеть предупреждение браузера о незащищённом контенте раньше, чем сработает редирект.

Если вы хотите настроить редирект с HTTP на HTTPS, используйте инструкцию: Редирект с HTTP на HTTPS для Linux.

Чтобы отключить редирект на HTTPS и подключить на HTTP:

  • 1 Войдите в панель управления хостингом или подключитесь к хостингу по FTP.
  • 2 Перейдите в каталог сайта.
  • 3

    Откройте файл .htaccess (или создайте его, если его нет) и добавьте в него следующие строки:

    RewriteEngine On
    RewriteCond %{SERVER_PORT} ^443$ [OR]
    RewriteCond %{HTTPS} =on
    RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

    или

    RewriteEngine On
    RewriteCond %{ENV:HTTPS} =on
    RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

    вместо site.ru введите имя вашего домена.

  • 4 Сохраните изменения и проверьте работу редиректа с помощью браузера.

Готово, вы настроили редирект с HTTPS на HTTP.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Как настроить переадресацию на домен С «www»

Через панель управления хостингом

Для входа в панель управления используйте инструкцию:Как войти в панель управления хостингом?

  • 1

    Перейдите в раздел Сайты и выберите домен, для которого хотите настроить редирект:

    Список всех сайтов в IPSmanager 6

  • 2

    В строке домена нажмите на три точки и выберите Настройка редиректов:

    Дополнительные настройки сайта в ispmanager 6

  • 3

    Нажмите кнопку Создать:

    Создать редирект в ispmanager 6

  • 4

    В открывшемся окне настроек выберите тип редиректа в графе Код, введите символ / в графе Путь и адрес назначения полностью (вместе с http:// или https://) в графе URL. Нажмите ОК, чтобы сохранить изменения:

    Параметры редиректа в ispmanager 6

Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.

  • 1

    В блоке «Домены» кликните Перенаправления:

  • 2

    В выпадающем списке выберите необходимый домен, установите галочку Не перенаправлять ссылки www, в поле «Перенаправление» пропишите ваш домен с префиксом http://www и нажмите Добавить для добавления перенаправления.

  • 1

    В разделе «Сайты и домены» кликните Настройки хостинга рядом с необходимым доменом:

  • 2

    В пункте «Предпочтительный домен» выберите домен с «www» и нажмите OK внизу страницы для добавления перенаправления.

Через файл .htaccess (только на Linux)

Перейдите в корневой каталог вашего сайта и добавьте в файл .htaccess (точка в начале важна) следующие строки:

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

Здесь site.ru — имя вашего домена.

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

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Как настроить переадресацию на домен БЕЗ «www»

Инструкция подойдет как для настройки переадресации на домен без «www», так и для настройки переадресации на поддомен без «www».

Через панель управления хостингом

Для входа в панель управления хостингом используйте инструкцию Как открыть панель управления хостингом?

В случае с ispmanager мы рекомендуем настраивать переадресацию через файл .htaccess. Ниже описано как это сделать.

Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.

  • 1

    В блоке «Домены» кликните Перенаправления:

    добавить редирект cpanel 1

  • 2

    В открывшемся окне выполните следующие настройки:

    • в выпадающем списке выберите необходимый домен; в поле «Перенаправляет на» пропишите ваш домен с префиксом http:// и выберите пункт «Перенаправлять только с www»:

      redirect_cpanel_3.png

    • нажмите Добавить для добавления перенаправления.

  • 1

    В разделе «Сайты и домены» кликните «Настройки хостинга» рядом с необходимым доменом:

  • 2

    В пункте «Предпочтительный домен» выберите домен без «www»:

    • нажмите Применить внизу страницы для добавления перенаправления.

Через файл .htaccess (только на Linux)

Перейдите в корневой каталог вашего сайта и добавьте в файл .htaccess (точка в начале важна) следующие строки:

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

здесь site.ru — имя вашего домена.

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

Чтобы настроить редирект с www на без www HTTPS или редирект без www на www HTTPS для всех страниц воспользуйтесь инструкцией: Редирект с HTTP на HTTPS для Linux.

Редирект с помощью Nginx

Добавление редиректа с помощью Nginx доступно только на VPS-сервере. Настраивается перенаправление по инструкции.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Как убрать редирект

Способ отключения редиректа зависит от того, каким образом вы его добавили: Редиректы.

Как удалить редирект в панели управления

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

  • 1

    Перейдите в раздел Сайты, выберите домен, для которого настроено перенаправление, нажмите на три точки и кликните Настройки редиректов:

    Настройка редиректов в ispmanager 6

  • 2

    На открывшейся странице выберите строку с нужным редиректом и нажмите Удалить:

    Удалить редирект в ispmanager 6

Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.

  • 1

    Перейдите в раздел Домены — Перенаправления:

    убрать редирект в cpanel 4

  • 2

    В списке «Текущие перенаправления» выберите нужную строку и нажмите напротив кнопку Удалить:

    убрать редирект в cpanel 5

  • 3

    Подтвердите отключение, нажав кнопку Удалить перенаправление:

    убрать редирект в cpanel 6

Отключить редирект в панели Parallels Plesk Onyx 17 можно только при удалении домена с редиректом: Как удалить домен в панели управления хостингом. Затем нужно добавить тот же домен: Как добавить домен в панели управления. При добавлении в пункте Тип хостинга обязательно выберите в раскрывающемся списке Хостинг веб-сайтов (а не Перенаправление):

убрать редирект в plesk 7

Как убрать редирект в .htaccess

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

Например, вы добавили 301 редирект с одного домена на другой. В таком случае в файле .htaccess удалите строки:

RewriteCond %{HTTP_HOST} old-site.ru
RewriteRule (.*) http://new-site.ru/$1 [R=301,L]

Где:

  • old-site.ru — домен, с которого происходит редирект,
  • new-site.ru — домен, на который происходит редирект.

Как убрать редирект в web.config

Чтобы отключить данный редирект, перейдите в каталог сайта, откройте файл web.config и удалите строки, с помощью которых задавался ваш тип редиректа: Редирект через web.config. Затем сохраните изменения.

Например, вы добавили 301 редирект на другой сайт. В таком случае в файле web.config удалите строки:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="301 Redirect 1" stopProcessing="true">
          <match url=".*" />
          <action type="Redirect" url="http://domain.ltd" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Где domain.ltd — имя вашего домена.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Laravel redirect

В этой статье мы сделаем краткий обзор инструмента Laravel и расскажем, как настроить в Laravel redirect.

Что такое Laravel

Laravel — это PHP-фреймворк, который позволяет создавать проекты по паттерну проектирования MVC. Программная платформа бесплатная и имеет открытый исходный код (размещен на GitHub). Laravel нередко называют экосистемой веб-разработки. Появившись только в 2011 году, он уже является одним из самых популярных фреймворков. «Framework for artisans», как называют Laravel сами создатели, даёт разработчику свободу для творчества.

Преимущества фреймворка:

  • поддержка NoSQL,
  • готовые шаблоны, админ-панели и возможность подключать шаблоны CSS,
  • пакеты для создания модулей Composer,
  • позволяет определить отношения между объектами баз данных,
  • контроллеры для разделения запросов POST- и GET-,
  • автоматическая загрузка классов.

Laravel позволяет быстро и грамотно создать безопасный и надёжный веб-проект. Скачать программу можно с официального сайта.

Как настроить редирект в Laravel

В Ларавел создание перенаправлений происходит через отклики класса «Illuminate\Http\RedirectResponse».

  • Чтобы сделать простое перенаправление, введите:
return redirect('page');

Где page — это страница, на которую вы хотите сделать редирект.

  • Чтобы настроить переадресацию на предыдущую страницу, используйте команду:
return redirect()->back();

или

return back()->withInput();
  • Чтобы сделать RedirectResponse на роутер, можно применить несколько способов. Например, route:
return redirect()->route('login');

Параметры роутера можно передать в качестве второго аргумента route:

return redirect()->route('profile', ['id' => 1]);

Где profile — это URI роутера.

  • Чтобы сделать переадресацию на контроллер, нужно передать контроллер и его методы в action. Для этого введите:
return redirect()->action('HomeController@index');

Где HomeController@index — данные о контроллере. При этом полное пространство имён контроллера подтянется автоматически.

Если вы хотите передать роутеру контроллера параметры, укажите их вторым аргументом:

return redirect()->action(

    'UserController@profile', ['id' => 1]

);
  • Чтобы настроить перенаправление с данными сессии в одной цепочке вызовов, используйте следующие команды:
Route::post('user/profile', function () {
    // Изменение профиля...
    return redirect('dashboard')->with('status', 'Profile updated!');
});

После того как пользователь будет переадресован, через синтаксис Blade можно вывести сообщение из сессии:

@if (session('status'))
  <div class="alert alert-success">
    {{ session('status') }}
  </div>
@endif

Теперь вы знаете, как настроить базовое перенаправление в Ларавел. Подробнее о настройке редиректа читайте в официальной документации.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Как сделать редирект 404 ошибки

Посетители сайта видят 404 ошибку, если страница, на которую они пытаются перейти, не существует или по какой-то причине сервер не может её найти. В статье рассмотрим, что это за ошибка и какое влияние она оказывает на поведенческие факторы пользователей и SEO. А также разберем, как настроить редирект 404 ошибки через .htaccess.

Что такое ошибка 404

Ошибка 404 (File not found) возникает, когда сервер не может найти запрашиваемую пользователем страницу. От ее появления не застрахован ни один сайт. Достаточно ввести в адресной строке после домена рандомный набор символов. Например:

http://site.ru/asdfjkl;

Сервер не сможет найти страницу, и отобразится ошибка:

редирект 404 1

Ошибка 404 на сайте Рег.ру

Также с ошибкой 404 можно столкнуться в следующих случаях:

  • Администратор сайта удалил или переместил страницу, но не сделал редирект на актуальный материал.
  • Изменилась структура сайта, а у страниц остались старые URL.
  • Посетитель опечатался в адресе, когда вводил его вручную.
  • Посетитель перешел по «битой» ссылке, которая ведет на несуществующую (удаленную или перемещенную) страницу.

Технически ошибка 404 связана с тем, что при открытии страницы браузер пользователя отправляет серверу запрос на контент, а сервер не находит запрашиваемой страницы и возвращает соответствующий ответ: не найдено.

Код 404 не стоит путать с другими похожими ошибками. Например, 403-й, которая означает, что доступ к ресурсу ограничен или запрещен. Подробнее о том, как ее исправить в статье.

Иногда при загрузке несуществующей страницы браузер получает ответ 200 вместо 404. Такой случай называют Ложной ошибкой (Soft 404). Он означает, что со страницей всё в порядке, хотя пользователь видит ошибку. Также проблема заключается в том, что Яндекс и Google показывают эту страницу в результатах поиска. Чтобы проверить код ошибки, воспользуйтесь проверкой URL от Google.

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

Возможные последствия для сайта

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

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

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

Рекомендации по созданию страницы 404

Если сайт создавался в CMS WordPress, Joomla, Drupal и т. п., в нем, скорее всего, предусмотрена страница ошибки 404. Но она может быть неинформативной или отличаться от дизайна остальных страниц вашего веб-ресурса.

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

Важно, чтобы страница была информативной и полезной:

  • Объясните, что случилось и почему пользователю попалась ошибка;
  • Посоветуйте, что пользователю стоит сделать, чтобы найти интересующий его контент;
  • Оставьте каналы для связи и возможность связаться с поддержкой сайта.

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

Примеры страниц с ошибкой 404

редирект 404 2

СберМаркет предлагает познать мудрость котов и цены на сайте

редирект 404 3

404 ошибка в разделе «Помощь» на сайте Рег.ру

Как создать страницу ошибки 404 и настроить редирект на нее в .htaccess

  • 1

    Создайте страницу одним из следующих способов:

    • Если вы знаете HTML и CSS, напишите код страницы самостоятельно и загрузите файл с названием 404.html в корневую папку сайта.
    • Если навыков верстки нет, в интернете можно найти бесплатные шаблоны со страницами ошибки. Скачайте файл и добавьте его в корневую папку.
    • Если вы используете WordPress, воспользуйтесь плагином 404page — your smart custom 404 error page по инструкции ниже. Обратите внимание! Если вы воспользовались плагином, вам не нужно прописывать путь к файлу в .htaccess.
    Как настроить страницу в плагине WordPress

    1) Откройте админку вашего сайта в WordPress.

    2) Перейдите в раздел «Плагины» и нажмите Добавить новый.

    3) В строке поиска введите название 404page — your smart custom 404 error page.

    4) Нажмите УстановитьАктивировать:

    редирект 404 4

    5) Перейдите в раздел Внешний вид404 Error Page.

    6) Выберите в списке Sample Page, чтобы сменить стандартную страницу ошибки, и нажмите Edit Page:

    редирект 404 5

    7) Создайте страницу в открывшемся визуальном редакторе и нажмите Обновить:

    редирект 404 6

    Готово! После обновления страница будет использоваться автоматически.

  • 2

    Откройте конфигурационный файл .htaccess в корневой папке вашего сайта и добавьте в него строку:

    ErrorDocument 404 https://site.ru/404.html

    где site.ru — домен вашего сайта.

  • 3 Сохраните изменения.

Готово! Теперь при возникновении 404 ошибки, в браузере пользователей будет открываться созданная вами кастомная страница.

Также рекомендуется закрыть служебную страницу 404 от индексации, чтобы она не возникала в поисковой выдаче вместе с остальными страницами сайта. Для этого откройте файл robots.txt в корневой папке сайта, добавьте соответствующую команду и сохраните изменения:

Disallow: /404.html

Редирект с 404 на главную (не рекомендуется)

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

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

Рекомендуется использовать специальные страницы для ошибки 404.

Проверка редиректа 404

Проверить, корректно ли все настроено можно в Яндекс.Вебмастер и Google Search Console.

Яндекс.Вебмастер

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

  • 1 Откройте Яндекс.Вебмастер.
  • 2 Перейдите в раздел ИнструментыПроверка ответа сервера.
  • 3 Введите название страницы ошибки и нажмите Проверить.
  • 4

    В коде статуса HTTP должно отображаться 404 Not Found:

    редирект 404 7

Google Search Console

Если вы используете этот инструмент впервые, укажите свой домен и пройдите валидацию, добавив TXT-запись/загрузив файл в корневую папку сайта или с помощью других способов.

  • 1 Откройте Google Search Console.
  • 2 Перейдите в раздел «Покрытие» в меню справа. Здесь будет отображаться информация о страницах ошибок.

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

Если сайт многораздельный и многостраничный, вручную мониторить его будет сложно. Рекомендуется использовать для поиска страниц ошибки 404 онлайн-сервисы (Serpstat, BadLincs.ru и другие). Также можно воспользоваться плагинами в CMS. Замените ссылки и настройте редиректы. А также создайте понятную красочную страницу ошибки с объяснением причины, ссылками на основные разделы и строкой поиска.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊

 👍

Служба поддержки

Готовы помочь с любым вопросом
Написать заявку