Htaccess переадресация на другой домен – «Как настроить редирект с одного домена на другой?» – Яндекс.Знатоки

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

Редирект всех страниц с 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]

2domains.ru

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

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

Перед созданием 301 редиректа…

А начну я с того, что перед созданием перенаправления, стоит тщательно проверить работоспособность сайта на новом домене. В частности:

  • Проверьте директивы в файле robots.txt.
  • Проверьте метатеги Robots на веб-страницах сайта, на новом домене.
  • Проверьте метатеги canonical.
  • Проверьте доступность страниц.
  • Обязательно создайте 404 страницу и установите на неё счётчик, в дальнейшем это позволит отследить наличие проблем.

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

Перенаправление с одного домена на другой в .htaccess

Существует достаточно много вариантов решения поставленной задачи. Лично я рекомендую использовать вот такой вариант?

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} robots.txt$ [NC]
RewriteRule ^([^/]+) $1 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain\.ru$
RewriteRule ^(.*)$ http://www.new-domain.ru/$1 [R=301,L]
</IfModule>

Чем хорош данный вариант? Во первых, он исключает из редиректа на старом домене файл robots.txt, что позволяет задать в нём директиву Host с указанием нового домена. Это работает только для поисковой системы Яндекс, подробней читайте тут. Я же отмечу, что директива Host может быть указана где угодно, но лучше будет указать её так:

User-agent: Yandex
Disallow: /cgi-bin
Host: www.new-domain.ru

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

Очевидно и то, что для работы приведенного примера редиректа необходимо указать свои домены. Обращаю ваше внимание на то, что в регулярном выражении директивы RewriteCond необходимо экранировать спецсимволы, тот же символ точки (.), например: old-domain\.ru, в то время как для нового домена в этом нет необходимости, но нужно начинать именно с HTTP-протокола, т.е. http:// и т.д.

К слову, новый домен можно указать и без www. в начале, но тут не забывайте о главном зеркале.

Дополнительные рекомендации

Рекомендация 1: Ещё до установки редиректа можно использовать директиву Host для Яндекс и метатег canonical для Google, а также файл sitemap.xml с URL-адресами страниц на новом домене; дождаться склейки и только тогда ставить редирект.

Примечание: Проверить склейку в Яндекс можно путём добавлении не главного зеркала (старого домена) в форму Сообщить о новом сайте, она возвращает соответствующее сообщение: Указанный вами сайт является неглавным зеркалом сайта...

В Google для этого можно использовать поисковый оператор запросов info:, указав в качестве значения старый домен, например: info:old-domain.ru.

Также Вы можете использовать и ряд онлайн сервисов, например: проверка домена на склейку от SEOGadget, проверка склейки на webmasters.ru и т.д.

С моей точки зрения лучше сразу ставить 301 редирект с исключением файла robots.txt, что избавит нас от лишних телодвижений и проблем с дублями.

Рекомендация 2: зарегистрируйте сайт на новом домене в Яндекс.Вебмастер и Google инструменте для веб-мастеров, не удаляя сайт на старом домене.

Рекомендация 3: используйте инструмент «Изменение адреса» в Google инструменте для веб-мастеров, чтобы сообщить Google о новом домене сайта. Для этого должен быть добавлен и подтверждён сайт на старом домене. Выбираем его в списке. На открывшейся странице кликаем список с иконкой в виде шестеренки, а потом пункт «Изменение адреса».

Рекомендация 4: будет не лишним создать файл sitemap.xml на новом домене и добавить его в Яндекс.Вебмастер и Google инструменты для веб-мастеров.

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

  • Индексирование сайта > Исключенные страницы – в Яндекс.Вебмастер.
  • Сканирование > Ошибки сканирования (вкладка «Не найдено») – в Google инструментах для веб-мастеров.

На этом у меня всё. Спасибо за внимание. Удачи!

Короткая ссылка: http://goo.gl/sTIVZA

chuvyr.ru

Переадресация домена на субдомен | Записки WEB специалиста

👁2 437 просм.

Иногда вы можете столкнуться с ситуацией, когда есть вроде как один домен domen.com, но при вводе его в адресную строку браузера он открывается в двух вариантах: как http://domen.com, так и http://www.domen.com. Вроде ничего страшного, ведь все равно открывается 🙂 И в Search Console и в Яндекс Вебмастер домен www.domen.com настроен как зеркало domen.com, или наоборот.

Но тут то и кроется подвох. Дело в том, что если у вас не настроен 301 редирект с основного домена на его зеркало, то поисковые роботы Google и Яндекс при очередной перепроверке увидят, что домен domen.com и www.domen.com не зависимы друг от друга и могут «расклеить» их между собой. Что приведет к тому, что эти два домена появятся в поисковой выдаче, а так как на них абсолютно одинаковый контент, то поисковые системы могут существенно понизить их позиции в выдаче.

Или, например, вы приобрели новый домен, который хотите использовать для своего сайта. Что же делать со старым доменом? Особенно если вы долгое время развивали свой проект и обросли большим количеством ссылочной массы с других ресурсов. Конечно же настроить 301 редирек, чтоб не потерять проделанную работу!

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

Обязательно сохраните резервную копию файла .htaccess перед тем, как вносить в него какие — либо изменения.

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

Переадресация с одного сайта на другой

В файле .htaccess нужно указать следующий код:

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

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_HOST} ^www.domen1.com [NC]

RewriteRule ^(.*) http://www.domen2.com/$1 [L,R=301]

Переадресация с www на без www и наоборот

Для переадресации с www.domen.com на domen.com в файле .htaccess нужно указать следующий код:

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

RewriteEngine On

RewriteBase /

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

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

Для переадресации с domen.com на www.domen.com в файле .htaccess нужно указать следующий код:

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

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_HOST} ^domen.com [NC]

RewriteRule ^(.*) http://www.domen.com/$1 [L,R=301]

Переадресация со всех несуществующих поддоменов на Ваш сайт

В файле .htaccess нужно указать следующий код:

RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^(.*).domen.com [NC] RewriteRule ^(.*)$ http://domen.com/$1 [L,R=permanent]

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_HOST} ^(.*).domen.com [NC]

RewriteRule ^(.*)$ http://domen.com/$1 [L,R=permanent]

Переадресация всех запросов на сайт на отдельную страницу нового сайта

В файле .htaccess нужно указать следующий код:

RewriteEngine On RewriteBase / RewriteRule ^(.*)$ http://domen.com/page/ [L,R=permanent]

RewriteEngine On

RewriteBase /

RewriteRule ^(.*)$ http://domen.com/page/ [L,R=permanent]

Во всех случаях параметр R=301 говорит о том, что переадресация будет сделана через 301 редирект.

Надеюсь данная информация окажется полезной для вас и поможет избежать проблем с «Расклейкой» зеркал сайтов и с понижением их в поисковой выдаче.

А как вы обычно настраиваете переадресацию на своих доменах?

web-specialist.info

что это такое, как сделать 301 редирект

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

Мы выпустили новую книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».

Подпишись на рассылку и получи книгу в подарок!

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

Примеры

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

В качестве примера работы этой системы можно привести следующее:

  1. Переход с http на https.
  2. Добавление аббревиатуры World Wide Web к началу ссылки или наоборот. Например, если вы нажмете на ссылку wattpad.com, откроется www.wattpad.com, как бы вы не старались. Также работает Фейсбук, а ВКонтакте наоборот удаляет www из адресной строки.
  3. Переход на другой домен. Данная ситуация случается, когда владелец сайта «переезжает» на другой домен или, проще говоря, меняет слова в URL. Когда социальная сеть Одноклассники только появилась, ее можно было найти по ссылке odnoklassniki.ru, однако сейчас, если вбить в адресную строку именно эту URL, вы будете перенаправлены на короткий и более удобный для запоминания адрес ok.ru.
  4. Автоматический вход на мобильную версию страницы. Здесь можно приводить в пример огромное количество разных сайтов, включая Вконтакте, Одноклассники и многие интернет-магазины.
  5. Удаление одного из разделов страницы, из-за чего вас могут перевести на главную страницу или куда-то еще.

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

Виды перенаправлений

Иногда вместо того, чтобы открыть новую версию того или иного сайта, вам посылают определенный код HTTP, зная который можно понять, почему не работает нужный URL-адрес. Всего их четыре: 301, 302, 303, 307.

  1. Редирект 301 на другой домен. Этот вид встречается наиболее часто. Он означает, что запрашиваемый ресурс безвозвратно переехал на другой URL. После получения этого ответа браузер повторяет запрос, после чего вас благополучно перенаправляют на актуальную версию необходимого сайта. Иногда сервер выдает ошибку 404: но это не ваша вина. Разработчики не включили функцию редиректа в свой код.
  2. HTTP 302 — это временное перемещение на другой адрес. Минус использования этого вида в том, что новому адресу не передаются некоторые данные со старого.
  3. HTTP 303. Используется в тех же случаях, что и 302, при наличии у владельца подходящей замены старому адресу.
  4. HTTP 307. Оповещает, что данный ресурс временно будет доступен по другому URL.

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

Реализация редиректа

htaccess-редирект на другой домен

Он настраивается в одноименном файле для веб-сайтов работающих на сервере Apache. Чтобы найти этот файл и начать работу с ним, вам необходимо скачать один из клиентов File Transfer Protocol — FileZilla, WinSCP или любую другую удобную вам программу. Скачайте документ .htaccess на свой ПК, проведите изменения в блокноте или другом подходящем редакторе, сохраните и выложите готовый файл на сервер.

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

PHP

Подчеркиваем сразу, он работает не так быстро, как предыдущий. Но в некоторых случаях предпочтительней использовать именно его. Например, когда необходимо перенаправить не целый сайт, а только одну страницу, или если вы работаете с сервером Nginx. Для работы с файлом index.php подходят те же программы, что и с htaccess.

Java Script и HTML

Это браузерные, а не серверные редиректы, а значит, они работают медленней всех. Главный минус Java Script состоит в том, что пользователи, отключившие JavaScript в своем браузере, не будут перенаправляться на рабочую версию сайта.

Сервисы для генерации кода

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

  1. RapidTables.
  2. Webconfs.
  3. Онлайн генерация от сервиса AleydaSolis.
  4. Workshop - создает код для HTTP 301.

Итог

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

semantica.in

Как сделать редирект с домена на домен и зачем это нужно

Добрый день, мои читатели! Я думаю, этот материал будет очень интересен для вас! Поговорим о том, что такое редирект с домена на домен. Представьте, вы набираете сайт president.ru, а после этого, он попадает на ваш! И, вот уже вы имеет сотни тысяч поклонников.

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

301 редирект представляет собой переадресацию с одного сайта на другой.

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

Сам htaccess 301 redirect необходим, программисту и вебдизанеру, чтобы с одного поддомена он мог перейти в другой. Так, например, нередки случаи, когда хороший и качественный сайт внезапно попадает под фильтры «поисковиков». В то же время, те читатели интернет – ресурса, который хранят его в своих закладках поисковых систем или же имеют подписку на rss новости, набирая уже имеющийся у них адрес, переходят на

«фильтрованный» сайт.

Помимо этого, redirect используется, чтобы имея основной проект, повысить его рейтинг в поисковых системах, а купив новый «продвинутый»  домен и произведя переадресацию на свой собственный интернет – ресурс. Таким образом, увеличивается и рейтинг вашего портала.

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

Как сделать редирект 301?

Чтобы произвести редирект следует найти файл htaccess в корневой папке (корневой называется та папка, где расположен ваш сайт).  Обычно это серверные папки, в которые можно войти через ftp типа www, domains, либо /public_html или HTDOCS. Далее, чтобы перейти с сайта на сайт, необходимо написать код (или скопировав, вставить его)

Redirect 301 /старая-страница.html http://новый-домен.ru/новая-страница.html
или
Redirect permanent /старая-страница.html http://новый-домен.ru/новая-страница.html

Можно также воспользоваться и еще одним редиректом, для того, чтобы не добавлять ссылки для адресов в htaccess

RedirectMatch /(.*)\.php$ /$1.aspx

Чтобы Ваш читатель был перенаправлен с сайта на другой, следует использовать следующую запись:

Redirect / http://www.домен.com

301 редирект с домена с www на без выглядит так:

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

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

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

Чтобы переадресовывать кириллические домены, необходимо воспользоваться конвертером punucod. Для этого, уже имеющийся у вас адрес (например президент.рф) при помощи сервиса http://wwhois.ru/punycode.php (введя сайт) необходимо изменить на www.xn--d1abbgf6aiiy.xn--p1ai.

Опытные программисты могут сделать и переадресацию домена на веб адрес – DNS web direct. Но это уже более высокий уровень.

В качестве примера, попробуйте самостоятельно сделать переадресацию следующих доменов http://2domains.ru/, http://timeweb.com,  https://www.nic.ru.

Очень удобно воспользоваться услугой переадресации доменов http://2domains.ru/. Она позволяет не только перенаправить ваш домен на другой адрес, но, также иметь не изменяемый адрес вашей страницы без хостинга и смены провайдера. Также, вы можете воспользоваться данной услугой, чтобы зарегистрировать дополнительный домен.

Владея одной страницей, например mypage, вы можете приобрести полное доменное имя на основном разделе сайта www.mypage.ru/mybrand/index.html. Это позволяет делать прямую рекламу интернет — ресурса, а читатели будут напрямую указывать адрес веб-страницы вашего ресурса и находить целевую страницу!

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

Можно и самостоятельно придумывать способы применения редиректа. Это очень удобно и просто! Стоит только попробовать! Попытайтесь!

На сегодня все. Подписывайтесь на обновления. Жду ваших комментариев, до встречи в следующем блоге! Пока-пока.

С уважением, Роман Чуешов

Загрузка...

Прочитано: 499 раз

romanchueshov.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *