Редирект через .htaccess | REG.RU
Добавьте в .htaccess код из нужного вам примера редиректов ниже:
- Редирект всех страниц с http:// на https://
Редирект всех страниц с http:// на https://, в том числе и с http://www на https://
вариант 1
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
или, если первый вариант не поможет, воспользуйтесь вторым вариантом:
вариант 2
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
если все варианты не помогли и возникает циклическая переадресация:
вариант 3
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
вариант 4
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
- Редирект на https только выбранной страницы
В примерах ниже редирект настраивается для страницы login.php.
вариант 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]
Редирект: что это такое, как сделать redirect на сайте
Редирект — это функция, которая так или иначе используется на большинстве сайтов. Его грамотная настройка позволяет избежать массы проблем в продвижении ресурса в поисковых системах.
Несмотря на кажущуюся простоту редирект таит в себе массу нюансов, о которых важно знать прежде, чем приступить к настройке. Какой вид выбрать, как выполнить его без ошибок, за что его любят и не любят поисковики — обо всём этом расскажем в статье.
Что такое редирект
Прежде всего необходимо разобраться с вопросом «Что такое редирект сайта?». В дословном переводе с английского это слово означает перенаправление. Например, если на одной из городских улиц по какой-то причине случился затор, регулировщик может перенаправить городской трафик на другую. Редирект работает похожим образом.
Редиректом в терминах IT называют автоматическую переадресацию пользователя с одного адреса страницы на другой. В большинстве случаев процесс перенаправления абсолютно незаметен для посетителя сайта.
Наши продукты помогают вашему бизнесу оптимизировать расходы на маркетинг
Узнать подробнееЗачем нужен редирект
На сайтах он решает несколько задач. Чаще всего он перенаправляет посетителя со страниц с неактуальным адресом или информацией, однако этим его функционал не ограничивается.
Редирект для целей SEO
В поисковой оптимизации сайтов используется для:
- склейки адресов страниц, например, без префикса https и с ним;
- переездов сайтов на другой домен, если не хочется потерять позиции сайта в поисковых системах и постоянных посетителей;
- обработки повторяющихся страниц;
- сохранение результатов продвижения при смене CMS сайта, так как в этом случае настройки ссылок будут различаться;
- необходимость удалить или скрыть определенные разделы сайта, перенаправив пользователя на другие или главную страницу.
Как работает редирект
Редирект — это четкая схема ответа на поисковый запрос пользователя, которая выглядит следующим образом:
- посетитель переходит по ссылке;
- сервер обрабатывает полученный запрос;
- столкнувшись с настройкой редирект, он перенаправляет пользователя согласно полученным данным;
- посетитель попадает на страницу, которая была указана в настройках.
Когда нельзя использовать редирект
Редирект — настройка полезная и должна быть в арсенале каждого владельца сайта. Однако и вреда его неправильное использование может нанести немало.
Использование опции не запрещено, но опасно с точки зрения SEO, если он создаётся для:
- страниц с отдельными ссылками, которые принадлежат разным каталогам;
- дорвеев и страниц несуществующих сайтов;
- Robots.txt. Если сайт переезжает на другой домен, важно сохранить в доступе прежний файл, чтобы ускорить склейку старых и новых версий;
- страниц с несколькими адресами, которые принадлежат к разным каталогам.
Иногда схожую функцию может выполнять тег rel=canonical. Они не индексируются, но позволяют поисковикам быстрее распознать новую ссылку как главную.
Виды редиректов
Исходя из того, что такое редирект, можно выделить несколько его видов. Имеющиеся различаются по двум показателям:
- постоянность или временность перенаправления;
- доступность старой страницы после настройки.
Рассмотрим каждый из видов подробнее.
301
301-й можно сравнить с постоянным переездом. Когда вы уезжаете из одного дома в другой и точно не вернётесь в старый.
Перенаправление этим способом настраивается навсегда, а старая страница больше не может участвовать в поисковой выдаче ни при каких условиях. При этом её показатели сохраняются и успешно переходят к новому ресурсу.
Этот вариант идеален, например, если с сайта необходимо удалить дубль — страницу, полностью дублирующую по содержанию ту, на которую идёт настройка. Однако во всех вышеперечисленных случаях он также может быть полезен.
Вариант оформления страницы ошибки 404
Поисковые системы реагируют на 301-й хорошо и сложностей обычно не возникает. Однако, если перенаправление настроено неправильно, пользователь при переходе на страницу получает ошибку 404 (не найдена).
302
Редирект 302 является временным. Возвращаясь к предыдущему примеру с переездом в новый дом, его можно сравнить, например, поездкой на дачу на летние каникулы. Городская квартира при этом остаётся в вашем доступе и вернуться туда можно в любой момент.
Процесс направления со старой страницы на новую настраивается временно, параметры старой страницы остаются привязаны к ней, а не переносятся на новую.
К такому виду часто прибегают владельцы интернет-магазинов, чтобы перенаправить потенциальных покупателей со страницы с товаром, который закончился, на позицию с аналогичными характеристиками. А вот выбирать его для переезда ресурса— не самый лучший и даже опасный вариант.
Нередки ситуации, когда при использовании 302-го для перманентного переезда страниц, веб-мастер обнаруживал проиндексированными обе версии. Для поисковых систем это означает полное дублирование страниц, а потому одна из них (чаще всего старая) будет исключена из выдачи.
303 и 307
307-й (Temporary Redirect) для поисковых систем фактически является точной репликой 302-го (Found). Это временное перенаправление трафика на новую страницу с сохранением всех параметров прежней.
Команда, которую получает браузер, если на странице настроен 303-й тип, выглядит следующим образом (документ найден и его можно отобразить, используя GET). В HTTP 1.1 он рассматривается как полная замена 302-го редиректа.
Вообще же основная сфера его использования — необходимость перенаправить пользователя, сделавшего запрос, на другую страницу, которая не содержит точного ответа, но является частичной заменой запрошенной.
Типы редиректов
Рассмотренные выше виды различаются по своему функционалу. Однако, существует и второй фактор, отличающий один от другого. Это техническое исполнение редиректа. По нему можно выделить следующие варианты.
Htaccess-редирект
Htaccess — этот системный файл, который принадлежит к корневой структуре сайта. Чтобы получить к нему доступ необходимо зайти в панель управления хостинга, на котором размещен нужный веб-ресурс. Для настройки любого вида необходимо разместить в нём строку с соответствующим кодом.
PHP-редиректы
Отличается от вышеописанного тем, что находится на уровне сервера. Однако процесс будет схожим. Необходимо найти в корневой папке сайта PHP-файл и вписать в него строку кода для соответствующего редиректа.
Она работает медленнее, чем htacces. Однако, если страниц для которых нужно настроить редирект, много и сделать это нужно выборочно, а не для всех подряд, именно PHP может стать оптимальным вариантом.
Маркетинговые продукты Calltouch
JavaScript-редирект
Этот тип отличается от предыдущих тем, что перенаправление осуществляется на стороне браузера, а не на стороне сервера. Соответственно, скорость переадресации резко снижается, так как скрипту необходимо полностью загрузиться для выполнения необходимых действий.
Важный минус такого способа: он не работает, если в браузере отключен JavaScript, что сегодня делают многие пользователи.
Основной сценарий применения JavaScript – пользователя нужно перенаправить на нужную страницу, но не сразу, а с задержкой. Например, при переезде на новый сайт его используют, чтобы вывести на экран сообщение типа «сейчас вы будете автоматически переадресованы на наш новый сайт».
Редирект необходимо настраивать к исходном коде страницы, с которой осуществляется перенаправление, изменив его текст между тегами <head>-</head>.
HTML-редирект
Это также медленный тип, так как он работает в браузере, а не на сервере. Для его настройки в исходный код страницы, с которой выполняется переадресация, нужно добавить метатег refresh.
В большинстве случаев серверные редиректы предпочтительнее браузерных, так как они обладают более высокой скоростью загрузки и не зависят от настроек на стороне пользователя.
Как сделать редирект
Ниже разберём несколько ситуаций, в которых владельцы сайтов чаще всего используют опцию редиректа.
C http на https
Из-за повсеместного переезда на https необходимость в этом редиректе возникает у многих. Для настройки через файл htaccess или PHP нужно использовать следующий код:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI)
C или на www
Этот редирект также очень важен для SEO, ведь с точки зрения поисковых систем страницы с префиксом www и без него являются разными и, соответственно, дублями.
Для выполнения настройки рекомендуется использовать специальные программы для генерации кодов редиректа, коих в Интернете существует множество, и сделать её через файл htacess.
Настройка перенаправления с одной страницы
Для выполнения этой операции действия нужно осуществлять по похожей схеме. Сначала сгенерировать код, после чего добавить его в файл htaccess или index.php. Если сайт работает на WordPress, можно воспользоваться плагинами, например, Simple 301 Redirects или Redirect.
Настройка редиректа при смене домена
В этом случае схема будет похожей, только в программах для генерации кода нужно получить постраничный редирект. Для этого потребуется ввести URL старого и нового сайта, а затем отметь нужные поля. Далее код также нужно добавить в файлhtacess или PHP.
Редирект папки
Можно задать и редирект для всей папки, то есть каталога. Это нужно, например, при создании подразделов, в том случае, если они отображаются в адресе страницы. Например, в раздел томаты на огородном сайте, имеющий ссылку примерного вида gardensampleblog.ru/tomaty/zheltye добавляется новый раздел «Томаты Черри», а ссылка получает следующий вид https://gardensampleblog.ru/cherry/zheltye.
Стандартный код для файла htacess в этом случае будет выглядеть следующим образом:
RedirectMatch 301 ^/tomaty/(.*)$ /cherry/$1
Как проверить редирект страницы
Самый очевидный способ — проверить выполнение в браузере. Перед проверкой не забудьте очистить кэш. Рекомендуется также зайти в браузер в режиме инкогнито.
Внешний вид сервиса проверки редиректов Redirect Checker
Можно использовать и специальные сервисы, которые помогут избежать этих «заморочек», например:
- Redirect Checker;
- Redirect Check;
- Чекер PrCy.
Услуга «Переадресация домена» (называемая также 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.
Техническая справка
Необходимо помнить, что если вы выбираете «маскировку адреса во фрейме», и хотите установить на вашей веб-странице ссылки на другие ресурсы, в теге ссылки необходимо указать 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.
О настройке различных вариантов услуги «Переадресация домена» читайте ниже в инструкции Как настроить Переадресацию домена.
-
2.
Кликните по домену, для которого хотите подключить услугу:
-
3.
Пролистайте открывшуюся страницу вниз и напротив «Переадресация домена» нажмите Заказать:
-
4.
Выберите период, на который хотите заказать услугу, и нажмите кнопку Продолжить:
-
5.
Проверьте позиции в корзине и нажмите Оплатить:
- 6. Выберите удобный способ оплаты и оплатите выставленный счет.
Готово, теперь услуга доступна в вашем Личном кабинете.
С помощью услуги «Переадресация домена» вы можете настроить следующие виды переадресации:
- одиночное перенаправление конкретного адреса;
- одиночное перенаправление с маскировкой адреса во фрейме;
- массовое перенаправление всех страниц.
Подробнее про каждый способ.
Для корректной работы услуги:
- к новому домену должен быть привязан IP-адрес старого домена,
- для домена должны быть прописаны DNS-серверы ns1.reg.ru и ns2.reg.ru. Если для домена прописаны другие DNS-серверы, используйте инструкцию Как изменить DNS-серверы.
-
1.
Перейдите к списку услуг и выберите Web-forwarding:
-
2.
Нажмите
-
3.
В шторке вы увидите, какие ресурсные записи должны быть у нового домена:
- 4. Проверьте, соответствуют ли ресурсные записи нового домена записям, полученным в шаге 3. Если нет, то измените их по инструкции Добавление A-записи.
- 1. Перейдите в Личный кабинет.
-
2.
Кликните по имени домена, для которого подключена услуга «Переадресация домена».
-
3.
Во вкладке «Управление» в блоке «DNS-серверы и управление зоной» нажмите Изменить:
-
4.
Выберите DNS-серверы ns1.reg.ru и ns2.reg.ru:
Готово, вы изменили DNS-серверы. Если ранее вы использовали другие DNS-серверы, изменения вступят в силу в течение 24 часов.
Чтобы настроить переадресацию с одного домена на другой:
Перейдите к списку услуг и выберите Web-forwarding:
-
2.
Во вкладке «Управление» пролистайте страницу вниз и в блоке «Перенаправления» нажмите Добавить:
-
3.
В шторке справа выберите нужное перенаправление:
-
4.
Заполните необходимые поля:
- в поле «С адреса» укажите относительный адрес (без имени вашего домена), с которого требуется перенаправлять посетителей;
- в поле «На адрес» укажите имя сайта, на который будут перенаправлены посетители.
Нажмите Готово:
Готово, одиночная переадресация с одного домена на другой настроена. Перенаправления других видов настраиваются аналогичным образом.
Что делать, если при маскировке адреса во фрейме сайт не адаптируется на мобильном устройстве?
При подключении маскировки адреса во фрейме сайт автоматически помещается в шаблон, который убирает принудительное масштабирование сайта. Это защищает сайты с современным адаптивным дизайном от проблем при использовании данного способа переадресации домена.
В коде head автоматически добавляется метатег:
meta name=“viewport” content=“width=device-width, initial-scale=1.0”
Он указывает на то, что сайт современен и оптимизирован для мобильных устройств.
Если при подключении маскировки адреса во фрейме, ваш сайт не масштабируется на мобильных устройствах или масштабируется неправильно — значит он не адаптивен.
Для устранения проблемы обратитесь к разработчикам вашего сайта.
Обратите внимание! При удалении услуги «Переадресация домена» средства не возвращаются.
- 1. Перейдите в Личный кабинет.
-
2.
Выберите Web-forwarding в списке услуг.
-
3.
Во вкладке «Операции» нажмите Удалить услугу:
-
4.
Подтвердите удаление услуги.
Готово, услуга будет удалена в течение 15 минут.
Помогла ли вам статья? 754
раза уже
помогла
www на без www, http на https, с домена на другой домен
Опубликовано: 29 августа 2014
Обновлено: 25 июня 2020
666 855
Три важных совета и семнадцать конкретных примеров установки 301 переадресации страниц через htaccess!
Советы
Располагайте переадресации страниц в файле от частных к более глобальным (сверху вниз). Например: простая переадресация двух страниц стоит выше, чем глобальное правило редиректов с www на без www.
Избегайте последовательных редиректов (двух, трех и т.д.). Правила должны быть настроены так, что при возникновении редиректа он должен перенаправлять пользователя (робота) только один (!) раз. Каждое лишнее переадресация – это секунды драгоценного времени отдачи страницы, это нагрузка на сервер, это нечеткие команды для поисковых роботов.
Не забывайте, что многие браузеры кешируют (запоминают редиректы), поэтому проверять переадресации лучше на сайте – http://www.bertal.ru.
В файле обязательно должна присутствовать команда:
RewriteEngine On
Второй способ сделать редирект – это переадресация через php
Правила переадресаций
1. 301 редирект с одной страницы на другую
Самый простой вариант
Redirect 301 /test-1/ http://site.ru/test-2/
Более подробный
RewriteCond %{REQUEST_URI} ^/test/$ RewriteRule ^.*$ http://site.ru/new-test/? [R=301,L]
2. 301 редирект с www на без www (главное зеркало – домен без www)
RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
3. 301 редирект с без www на www (главное зеркало – домен с www)
RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]
4. 301 редирект со страниц со слешем на без слеша (весь сайт)
RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} ![^\/]$ RewriteRule ^(.*)\/$ /$1 [R=301,L]
5. 301 редирект со страниц без слеша на слеш (часто в CMS системах устанавливается автоматически)
RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]
6. Один (а не два последовательных!) 301 редирект на без www и с слешем на конце адреса страницы
RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1/ [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} ![^\/]$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://%1/$1/ [L,R=301]
7. Один (а не два последовательных!) 301 редирект на c www и со слешем на конце адреса страницы
RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://www.%1/$1/ [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1/ [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} ![^\/]$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]
8. Один (а не два последовательных!) 301 редирект на c www и без слеша на конце адреса страницы
RewriteCond %{REQUEST_URI} ^\/$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} \/$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)\/$ http://www.%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} \/$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)\/$ http://www.%1/$1 [L,R=301]
9. Один (а не два последовательных!) 301 редирект на без www и без слеша на конце адреса страницы
RewriteCond %{REQUEST_URI} ^\/$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} \/$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} !\/$ RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1 [L,R=301] RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} \/$ RewriteCond %{HTTP_HOST} ^([^www].*)$ RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]
10. 301 редирект только адреса site.ru/index.php (без GET параметров) на основное зеркало site.ru
RewriteCond %{REQUEST_URI} /index.php RewriteCond %{QUERY_STRING} ^\z RewriteRule ^(.*)$ http://site.ru/? [R=301,L]
11. 301 редирект всех адресов с index.php и GET параметрами на страницы только с GET параметрами (вырезать в url index.php)
Пример: типа site.ru/index.php?n=1 на site.ru/?n=1
RewriteCond %{REQUEST_URI} /index.php RewriteRule ^(.*)$ http://site.ru/ [R=301,L]
12. 301 редирект для index.php, index.html или index.htm (например в Joomla), массовая склейка
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/ RewriteRule ^(.*)index\.(php|html|htm)$ http://site.ru/$1 [R=301,L]
13. 301 редирект url с GET параметрами (динамический URL) на статический
1 вариант (простой адрес с GET параметром)
RewriteCond %{QUERY_STRING} ^id=229 RewriteRule ^.*$ /supermodel/? [R=301,L]
2 вариант (со страницы и GET параметром)
RewriteCond %{REQUEST_URI} /test/ RewriteCond %{QUERY_STRING} ^id=229 RewriteRule ^.*$ /supermodel/? [R=301,L]
14. Все страницы одного домена на главную страницу другого домена
RewriteCond %{REQUEST_URI} (.*) RewriteRule ^(.*)$ http://site.ru/ [L,R=301]
15. Каждая страница одного домена на такой же адрес другого url
RewriteCond %{REQUEST_URI} (.*) RewriteRule ^(.*)$ http://site.ru/$1 [L,R=301]
16. Редирект с протокола http на https.
RewriteCond %{HTTPS} !=on RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Если возникает циклический редирект, то воспользуйтесь этим вариантом:
RewriteCond %{HTTPS} off RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Для Битрикс-сайтов на хостинге reg.ru
RewriteCond %{SERVER_PORT} !^443$ RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Для сертификатов https c Cloudflare:
RewriteCond %{HTTP:CF-Visitor} '"scheme":"http"' # Without Cloudflare: # RewriteCond %{HTTPS} off RewriteRule ^ https://www.example.com%{REQUEST_URI} [NE,R=301,L]
17. Редирект с протокола https на http.
Обратный редирект, если перестали использовать SSL сертификат.
RewriteCond %{HTTPS} =on RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
Может быть полезно:
Доброго воскресного дня!
Очень часто на форумах можно встретить вопросы, посвящённые .htaccess — файлу конфигурации веб-сервера Apache. Основной камень преткновения в том, что при разработке не стояла задача удобной конфигурации для конечного пользователя (в дистрибутив не включена оболочка для визуальных установок с помощью галочек, выпадющих списков и тому подобное), зато администраторы серверов справляются с этой задачей замечательно, довольствуясь «маном» (от команды Linux — man — краткое руководство от разработчиков, или в данном случае — от профессионалов для профессионалов).
В большинстве случаев требуются совсем несложные манипуляции: безусловный редирект на другой сайт, либо перенаправление с одного места в другое (допустим, когда поменялся URL раздела). И каждый человек начинает считать, что уж его-то проблемы точно нигде нет, и даже бесполезно искать решение в интернете и поиске по форуму. Давайте же посмотрим, что эти проблемы таковыми на самом деле не являются.
Редирект .htaccess: постоянное перенаправление, 301
Подобная штука имеет разные названия. Непонятки может вызвать разве что число — почему же 301? Суть кроется в самом протоколе HTTP, который на запросы клиента отвечает определённым кодом состояния. Код 404 Not Found (Страница не найдена) известен почти всем. Код 200 OK почти не известен, но именно он означает, что всё в порядке и документ будет показан в браузере. А вот код 301 Moved Permanently означает, что документ окончательно перебрался на новый адрес. Именно его и называют чаще всего перенаправлением, хотя общий пул ответов обозначен как — 3xx: Redirection.
У Apache есть несколько возможностей для осуществления редиректов. Модуль mod_rewrite предоставляет отличный механизм работы с перенаправлениями, и в дальнейшем я буду использовать в примерах именно его. В модуле mod_alias тоже имеются директивы для редиректов с определённого адреса или с адреса, который соответствует регулярному выражению:Redirect permanent / http://newsite.ru/
RedirectMatch permanent .* http://newsite.ru/
Но в mod_rewrite имеются дополнительные возможности для переадресации, поэтому лучше применять (IMHO) его.
В общем случае, для безусловного внешнего (назовём его пользовательским) редиректа, при котором браузер автоматически переадресовывается на другую страницу, обычно незаметно для пользователя (изменяется адресная строка), можно в .htaccess поместить такой код:RewriteEngine On
RewriteRule .* http://newsite.ru/ [L,R=permanent]
Здесь, первая строка включает механизм модуля mod_rewrite, который позволяется вытворять с адресами всё, что угодно. Назовём это преобразованием URL по условиям на лету. Вторая строка определяет непосредственно правило для преобразования, в примере выше все запросы редиректятся на http://newsite.ru/. В квадратных скобках размещаются флаги: L — последнее (Last) правило, R — тип перенаправления (Redirect), указывается в виде R=code, где code — буквенное или числовое обозначение (permanent или 302).
https://a-panov.ru/2014/11/free-cms/
Взглянув на этот URL, сразу видно, что статья опубликована в ноябре 2014. Убрав название с заключающим слешем — https://a-panov.ru/2014/11/ — получим список всех публикация за ноябрь. Обычные адреса, вида:
https://a-panov.ru/?p=389
особой дружелюбностью не отличаются. Увидев такой адрес, нельзя сказать о странице, на которую он ведёт, решительно ничего.
Этот способ хорош, когда вам неважно, на какую страницу нового сайта ссылаться. Но если вы переехали на другой домен, то желательно делать редиректы всех запросов с сохранением адресов. Для этого используйте такой код:RewriteRule ^.*$ http://newsite.ru/$0 [QSA,L,R=permanent]
Новый флаг QSA сохранит так же и параметры, которые можно встретить в адресах после знака вопроса. В уже знакомом примере:
https://a-panov.ru/?p=389
если я размещу в .htaccess код выше, то произойдёт перенаправление на адрес http://newsite.ru/?p=389 чего без данного флага не было бы.
Здесь и дальше я буду опускать директиву включения преобразований:RewriteEngine On
просто помните: если вы пользуетесь механизмом mod_rewrite, то все условия/преобразования должны выполняться после данной директивы. Для отключения используется такая строка:RewriteEngine Off
соответственно, для каждого правила нет нужды постоянно «включать» преобразования — это начинает делаться автоматически, сразу после первой директивы.
Как настроить редирект на www (или без www)
Подобные перенаправления требуются для случаев, когда сайт доступен по вариантам nsite.ru и www.nsite.ru, в этом случае поисковики считают их дублями и могут либо самостоятельно выбрать один из вариантов в качестве главного зеркала, либо в поиске будут варианты с обоих доменов. В общем случае, это отрицательный фактор при ранжировании сайта.
Вариант попроще, для одного домена. Перенаправление производится с поддомена www.site.ru на site.ru:RewriteCond %{HTTP_HOST} ^www\.nsite\.ru$
RewriteRule .* http://nsite.ru/$0 [QSA,L,R=permanent]
Здесь появилась новая директива RewriteCond, которая задаёт условие, при котором должны срабатывать редиректы — правила RewriteRule. Условие, в данном случае, имя домена, соответствующее www.nsite.ru (в регулярных выражения символ точки означает «любой символ», поэтому его желательно экранировать с помощью обратного слеша).
Обратное перенаправление тоже выполнить очень просто:RewriteCond %{HTTP_HOST} ^nsite\.ru$
RewriteRule .* http://www.nsite.ru/$0 [QSA,L,R=permanent]
Оба варианта рабочие, но у них есть маленький минус — для каждого нового конфига необходимо заменять домен nsite.ru на свой собственный. Нельзя ли сделать уникальный вариант? Легко!
Редирект с любого поддомена www:RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule .* http://%1/$0 [QSA,L,R=permanent]
Редирект на поддомен с www:RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* http://www.%{HTTP_HOST}/$0 [QSA,L,R=permanent]
%{HTTP_HOST} — текущий домен
Как создать .htaccess
Такие вопросы тоже возникают. Проблема в том, что стандартный Проводник (приложение в Windows, отвечающее за графический интерфейс) не позволяет создавать файлы, начинающиеся с точки (созданием файлов или папкок осуществляется щелчком правой кнопкой на рабочем столе или в окне, и выбора нужного действия из списка Создать). Но выход есть: открывайте стандартный рекдатор Notepad (блокнот), в меню выбираете Файл → Сохранить как…, и в качестве имени сохраняемого файла указываете .htaccess — после этого он будет создан.
Файл .htaccess не работает
Бывают случаи, когда директивы из файла не работают. Обычно это вызвано тем, что в конфигурации Apache отключена поддержка .htaccess, за что отвечает директива:AllowOverride none
Обычно это делается, чтобы несколько увеличить быстродействие — в этом случае веб-сервер не производит поиск и разбор .htaccess.
Возможен и такой вариант, что на сервере не используется Apache, например, IIS — основной «гость» на Windows-хостинге. Для уточнения свяжитесь с поддержкой своего хостера.
Есть ли какой-нибудь аналог .htaccess в nginx?
Ещё один довольно частый вопрос. В этом веб-сервера такой возможности нет. Однако, подобное обычно и не требуется. Дело в том, что nginx, как правило, устанавливается в качестве фронденда, т. е. принимает и обрабатывает все запросы, которые либо выполняет сам, либо перенаправляет на бэкенд, роль которого может выполнять Apache, который можно дополнительно конфигурировать с помощью .htaccess.
Автор публикации
2 070не в сети 2 месяца
x64 (aka andi)
Комментарии: 2893Публикации: 405Регистрация: 02-04-2009 Загрузка…В этой статье мы рассмотрим, как настроить постоянный 301 htaccess редирект.
Редирект — автоматическое перенаправление с одной страницы на другую. Например, если настроить редирект с site1.ru на site2.ru, пользователи, которые будут вводить в адресную строку браузера site1.ru, сразу попадут на сайт site2.ru. Существует два вида перенаправления со страницы на страницу или с одного домена на другой: постоянный редирект (301) и временный редирект (302). Редиректы можно настраивать через конфигурационный файл htaccess: Что такое .htaccess?
В каких случаях нужно использовать редирект
- Если сайт переехал на другой домен, 301 редирект поможет избежать ошибки 404, сохранить посетителей и поисковую позицию.
- На нескольких страницах есть повторяющийся контент. Этот фактор препятствует ранжированию. Установите редирект, чтобы поисковые роботы не понижали ваш сайт в поисковой выдаче.
- Вы купили SSL-сертификат. По умолчанию сайты работают по небезопасному протоколу HTTP. Чтобы защитить данные, нужно перенести сайт на протокол HTTPS.
- Для склейки сайтов с «www» и «/» для SEO.
Чтобы узнать, как прописать 301 редирект htaccess с HTTP на HTTPS, воспользуйтесь отдельной подробной инструкцией: Редирект с HTTP на HTTPS. Настройка редиректа в остальных случаях описана ниже.
Внимание! Если вы используете IDN-домен (например: сайт.рф), прописывайте его в формате Punycode. Для этого вы можете использовать Punycode-конвертер.
Как настроить редирект через htaccess
Перенаправление можно настроить, добавив строки кода в файл htaccess. Примеры редиректов:
С домена на домен
RewriteEngine On
RewriteCond %{HTTP_HOST} old-domain.ru
RewriteRule (.*) http://new-domain.ru/$1 [R=301,L]
Замените:
old-domain.ru на домен, с которого осуществляется редирект;
new-domain.ru на домен, на который осуществляется редирект.
С домена с WWW на домен без WWW
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain.ru$ [NC]
RewriteRule ^(.*)$ http://domain.ru/$1 [R=301,L]
Замените domain.ru на имя вашего домена.
С домена без WWW на домен с WWW
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain.ru
RewriteRule (.*) http://www.domain.ru/$1 [R=301,L]
Замените domain.ru на имя вашего домена.
Со всех страниц одного домена на главную страницу другого
RewriteEngine On
RewriteRule ^$ http://domain.ru [R=301,L]
Замените domain.ru на домен, на который будет осуществляется редирект.
Как настроить редирект через htaccess на хостинге 2domains
Если у вас есть хостинг 2domains с панелью управления ISPmanager, воспользуйтесь инструкцией.
Убедитесь, что домен добавлен в панели управления: Как добавить домен в панели управления?
-
Перейдите в панель управления хостингом ISPmanager.
-
Перейдите в раздел «WWW-домены», кликните по домену, с которого будет происходить перенаправление на другой сайт, и нажмите Каталог:
-
Дважды кликните по файлу htaccess или создайте его, если его нет (нажмите Создать в верхней панели и введите название .htaccess — не забудьте точку):
-
Добавьте в файл код из списка выше (в зависимости от того, какой редирект нужен) и сохраните изменения, нажав Ok:
Готово! Мы рассмотрели, как сделать 301 редирект. После внесения изменений в файл .htaccess и сохранения переадресация сайта будет работать.
Периодически, к нам обращаются наши клиенты, с вопросом, как сделать переадресацию сайта с одного домена на другой. Как правило, этот вопрос задают в двух вариантах:
сайт открывается по 2 адресам: www.mysite.ua и mysite.ua (для поисковых машин это существенная разница и они воспринимают 2 адреса, как 2 разных сайта), поэтому необходимо сделать чтобы при обращении к страницам сайта с www, шла переадресация на такие же страницы сайт без www, например с http://mysite.ua/news/ на http://www.mysite.ua/news/ (или наоборот).
у вас есть несколько доменов, основной mysite.ua и альтернативный my-site.ua и/или кириллический мойсайт.укр. Необходимо, чтобы при наборе в браузере адреса my-site.ua и/или мойсайт.укр посетитель автоматически перенаправился на сайт mysite.ua.
1. Перенаправление домена в файле .htaccess.
1.1. С www-домена на основной домен
Если на вашем сервере включен модуль mod_rewrite, то того, чтобы настроить переадресацию с адресов, начинающихся с www на аналогичные без www, нужно в файле .htaccess,
в корневой папке www
вашего сайта прописать следующие строки:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
1.2. С основного домена на www-домен
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www.) [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
1.3. С одного домена на другой
Задача может быть решена так же как и первая, для настройки перенаправления посетителей с одного доменного domain1.ua имени на другое domain2.ua вы можете использовать соответствующие директивы в файле .htaccess.
Сделать на старом домене domain1.ua файл .htaccess, с содержанием:
RewriteEngine On
RewriteCond %{HTTP_HOST} domain1.ua
RewriteRule (.*) http://domain2.ua/$1 [R=301,L]
1.4. Перенаправление с нескольких доменов
Необходимо сделать переадрессацию с доменов domain1.ua и www.domain1.ua на новый домен domain2.ua, для это впишите:
RewriteCond %{HTTP_HOST} ^
domaim1
\.
ua
RewriteRule ^(.*)$ http://
domain2.ua
/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.
domain1
\.
ua
RewriteRule ^(.*)$ http://
domain2.ua
/$1 [R=301,L]
Аналогично можно делать перенапрвление с
domain.ua
на
domain.com
и т. п.
Однако если вы размещаетесь на тарифном плане с ограниченным числом доменов, включенных в тариф, то настройка сайта с одним только файлом .htaccess лишит вас еще одного домена в квоте по тарифу, что не всегда приемлемо. В этом случае можно воспользоваться специальным сервисом панели управления хостингом.
2.
Перенаправление домена
в панели управления хостингом
На примере панели управления «cPanel»
Вы можете выбрать варианты перенаправления – 301 или 302.
301 редирект — это постоянное перенаправление. Т.е. при установке 301 редиректа всем, в том числе поисковым машинам, будет сообщено, что запрашиваемая страница навсегда «переехала» на новый адрес. Такое перенаправление необходимо, например, при переезде с одного доменного имени на другое. Таким образом, вы не потеряете поисковый трафик, а поисковые машины будут оповещены о смене адреса.
302 редирект — это временное перенаправление. Таким образом, пользователи, вызывая страницу, на которую установлен 302 редирект, будут получать ответ с указанного в редиректе адреса. Однако в поисковых машинах прежний адрес останется и будет удерживать свои позиции.
Также, можно выбрать опции перенаправления, связанные с синонимом сайта с www. Обратите внимание, что переадресацию с домена http://www.site.ua/ на http://site.ua/ средствами cPanel сделать не удастся. Подобный редирект создается с помощью файла .htaccess.
Управление перенаправлением выглядит довольно стандартно. Вы можете удалить созданный параметр:
3.
Перенапрвленеи кирилличнский доменов
Переадрессация кириилических доменов ничем не отличается от обычного (на латинице). Просто необходимо использовать конвертер punycode .
Punycode – это метод преобразования символов, относящихся к стандарту Unicode, в последовательность символов, содержащих только символы в кодировке ASCII, а именно 26 букв латинского алфавита (a-z), цифры (0-9) и символ дефиса (всего 37 символов).
Домены, содержащие символы национальных алфавитов называют IDN-доменами. Некоторые сервисы не поддерживают IDN представление доменов. Поэтому не работает домен УКР или другие IDN-домены. В таком случае необходимо использовать имя домена после Punycode-конвертации.
Например, домен http://мойсайт.укр/ после кодирования (можно воспользоваться сервисом http://wwhois.ru/punycode.php) становится http://xn--80arbjktj.xn--j1amh/ , его-то мы и вписываем в уже знакомый код
RewriteEngine On
RewriteCond %{HTTP_HOST} http://xn--80arbjktj.xn--j1amh/
RewriteRule (.*) http://domain2.ua/$1 [R=301,L]
или в соответствующую строку в панели управления.
- Товары
- Клиенты
- Случаи использования
- Переполнение стека Публичные вопросы и ответы
- Команды Частные вопросы и ответы для вашей команды
- предприятие Частные вопросы и ответы для вашего предприятия
- работы Программирование и связанные с ним технические возможности карьерного роста
- Талант Нанимать технический талант
- реклама Связаться с разработчиками по всему миру
- Товары
- Клиенты
- Случаи использования
- Переполнение стека Публичные вопросы и ответы
- Команды Частные вопросы и ответы для вашей команды
- предприятие Частные вопросы и ответы для вашего предприятия
- работы Программирование и связанные с ним технические возможности карьерного роста
- Талант Нанимать технический талант
- реклама Связаться с разработчиками по всему миру
Simple Redirect для веб-сайтов — плагин WordPress
Плагин Simple Website Redirect позволяет вам перенаправить весь сайт (кроме администратора WordPress) на другой сайт.
Путь URL и строка запроса сохраняются при перенаправлении на новый сайт. В идеале новый сайт должен обрабатывать любые одноразовые перенаправления, когда URL-адрес старой страницы должен указывать на новую страницу. Плагин Redirection отлично подходит для этой цели.
Узнайте больше о перенаправлениях сайта для SEO.
Инструкция по применению
Использовать этот плагин просто:
- Установите плагин
- Активировать плагин
- Перейдите в «Настройки» в меню администратора WordPress, а затем нажмите «Перенаправление веб-сайта».
- Введите URL-адрес, на который вы хотите перенаправить сайт, установите желаемый тип перенаправления, установите статус «Включен» и сохраните изменения!
Примечание. Тип перенаправления может быть «Временный» или «Постоянный». Рекомендуется начинать с «Временного» во время тестирования, а затем переходить в «Постоянный» после тестирования для максимальной пользы SEO.Обратите внимание, что браузеры кэшируют постоянные перенаправления.
- Просто введите URL-адрес, на который вы хотите перенаправить сайт, установите желаемый тип перенаправления, установите статус «Включен» и сохраните!
- Расширенные настройки позволяют настраивать исключения для перенаправлений на внешнем интерфейсе. Очень полезно, если вам все еще нужно использовать интерфейсный конструктор страниц при перенаправлении всего остального.
Пререквизиты
Если вы не соответствуете приведенным ниже требованиям, я настоятельно рекомендую обновить установку WordPress или перейти на веб-хостинг, который поддерживает более новую версию PHP.
- Требуется WordPress версии 4.0 или выше
- Требуется PHP версии 5.4 или выше
Легкий путь
- В админке WordPress перейдите в «Плагины» и нажмите «Добавить новый».
- В поле поиска введите «Simple Redirect Redirect» и нажмите «Enter». Этот плагин должен быть первым и, вероятно, единственным результатом.
- Нажмите на ссылку «Установить».
- После установки нажмите на ссылку «Активировать этот плагин».
трудный путь
- Скачать.ZIP-файл, содержащий плагин.
- Загрузите файл в каталог
/ wp-content / plugins /
и распакуйте - Найдите плагин в админке WordPress на странице «Плагины» и нажмите «Активировать»
«Simple Website Redirect» — это программное обеспечение с открытым исходным кодом. Следующие люди внесли свой вклад в этот плагин.
участников1,2,3
- Исправлена ошибка, возникающая при сохранении без настройки URL-адреса перенаправления.
1.2,2
- Убедитесь, что путь URL-адреса, связанный с домашним URL-адресом WordPress, не добавляется к URL-адресу при сохранении путей URL-адресов.
- Правильно очистите URL-адрес перенаправления, чтобы предотвратить зацикливание перенаправления, при этом обеспечивая совместимость с сайтами, установленными в подкаталоге.
- Исправлена ошибка, из-за которой пустой URL-адрес перенаправления мог привести к непустому URL-адресу перенаправления после фильтрации.
1.2.1
- Добавлена возможность обойти любое перенаправление, добавив строку запроса
? Simple-website-redirect
. - Убедитесь, что перенаправления запрещены для страниц администрирования и входа в систему независимо от того, где установлен WordPress.
- Исправлена незначительная проблема, при которой некоторые URL имели двойную косую черту в начале пути.
1,2
- Добавлена возможность добавлять исключающие пути и параметры исключения, которые, если установлены, будут предотвращать перенаправления, если найдено совпадение с одним из этих исключений.
1,1
- Обновлен код для соответствия строгим стандартам кодирования.
- Добавлена возможность перенаправить все страницы на домашнюю страницу.
1.0.2
- Исправлена ошибка, когда URL перенаправления не может содержать путь
- Исправлена ошибка, при которой URL-адрес перенаправления очищается, когда перенаправление отключено.
1.0.1
- Исправлена ошибка, при которой происходило перенаправление на странице входа.
1,0
,Как перенаправить домен без изменения URL
В этой статье мы дадим вам 2 способа, как перенаправить ваш сайт на другой URL без изменения домена.
(для разработчиков или системных администраторов, имеющих опыт работы с командной строкой, получите High Availability и Root Access для своего приложения, службы и веб-сайтов с Cloud VPS Hosting).
Пример 1. Перенаправление и сохранение всего после URL
.Первая опция покажет все то же содержание на одном URL, как и на другом.(. *) https://DomainB.com/$1 [P]
Если вы используете файловый менеджер в cPanel, убедитесь, что у вас есть возможность показывать выбранные скрытые файлы.
Что делает вышеупомянутый редирект?
После добавления этой строки в ваш файл .htaccess, вы сможете перейти на DomainA.com/YourPage, и он покажет контент с DomainB.com/YourPage
Пример 2. Перенаправление домена на определенный URL-адрес
Существует еще один способ перенаправления, чтобы показать конкретный URL, но при этом сохранить домен таким же.(. *) https://DomainB.com/PathToPageHere [P]
Вы могли бы использовать этот метод, если, например, у вас есть внешний блог, такой как блог на blogspot.com, или корзина покупок на etsy.com, где вы хотите, чтобы люди посещали ваш домен, не размещая там свой домен полностью. Теперь посетители могут получить доступ к вашему сайту с помощью вашего домена, но увидеть содержимое внешнего URL.
Пример 3 Переадресация IP-адреса
Иногда появляется запрос на перенаправление IP-адреса на определенный URL-адрес.##. ##. ##. ##
RewriteRule (. *) Https://domain_name.com/$1 [R = 301, L]
Положений / Пожалуйста, прочитайте
Предупреждение. При использовании первого варианта поисковые системы, такие как Google или Bing, увидят несколько сайтов с одинаковым содержанием и могут вызвать падение рейтинга на одном или обоих сайтах. С точки зрения SEO, ваш лучший вариант — создать 301 переадресацию.
Если вы выберете второй вариант и используете на своем сайте абсолютные ссылки (т.е. ваши ссылки ведут на полный URL-адрес, а не только на отдельный файл), любые ссылки будут переходить на исходный сайт, связанный с этой ссылкой.
,