Настраиваем редирект с http на https

Содержание:

Введение

Что такое перенаправление (Redirects)?

Перенаправление означает, что веб-сайт может перенаправить запрос ресурсов на другой URL/конечную точку. Предположим, что вы отправляете запрос на apple.com, а apple.com может перенаправить вас на другой сайт (new-apple.com), так что вы окажетесь на new-apple.com, даже если исходный запрос был сделан для apple .com. Это называется «перенаправление». Существуют различные типы перенаправлений в HTTP.

Стандартные коды статусов перенаправлений — 3xx

  • 300 Multiple Choices множество выбора
  • 301 Moved Permanently перемещено навсегда
  • 302 Found найдено
  • 303 See Other смотреть другое
  • 304 Not Modified не изменялось
  • 305 Use Proxy использовать прокси
  • 307 Temporary Redirect временное перенаправление
  • 308 Permanent Redirect постоянное перенаправление

Перенаправление может происходить на стороне сервера (Server-Side) или на стороне клиента (Client-Side).

Server-Side: Запрос на перенаправление отправляется на сервер, затем сервер уведомляет браузер о перенаправлении на URL-адрес, указанный в ответе.

Client-Side: Браузер получает уведомление о перенаправлении на указанный URL-адрес напрямую, без вмешательства сервера.

Что такое Open Redirects?

Open redirect (Открытое перенаправление) это то, что написано в названии: Открытое (Open) перенаправление (Redirects) на любой веб-сайт.

Почему это проблема?

Ну, это плохо с самого начала, подумайте об этом на мгновение, что если apple.com, ДОВЕРЕННЫЙ веб-сайт, позволяет вам перенаправить на любой другой веб-сайт. Тогда злонамеренный пользователь может просто перенаправить apple.com на attacker.com, и люди все время будут думать что они находятся на apple.com, полагая, что ему доверяют, но на самом деле это не так. Поэтому разрешать перенаправления на любой веб-сайт без проверки или без надлежащего уведомления пользователя — это плохо.

Что представляет собой редирект и как он работает

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

Принцип работы редиректа заключается в следующем алгоритме:

  1. Сначала пользователь вводит необходимый ему запрос в поисковую строку, либо переходит по гиперссылке.
  2. После этого сервер начинает обрабатывать поступивший запрос.
  3. В ходе данного процесса он доходит до параметра redirect и начинает следовать ему.
  4. Пользователь либо переходит на новый URL-адрес, заранее прописанный в инструкции, либо же получает определённый код http.

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

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

  1. Смена доменного имени. При помощи перенаправления можно избежать потери прошлого трафика и сохранить все показатели предыдущего ресурса.
  2. Удаление какого-либо раздела на сайте.
  3. Одинаковые страницы. Наличие на сайте одинакового содержания может сильно ухудшить его ранжирование. Однако если ввести в код команду redirect, будет выделен только основной контент.
  4. Переход на другой движок. Все CMS обладают собственными правилами генерации URL. В случае, если новый адрес не будет таким же, как и прошлый, пользователи не смогут воспользоваться старым. Вместе с этим будут утрачены уже имеющиеся результаты продвижения.
  5. Соединение доменов. В данном случае подразумевается присутствие или отсутствие в именах «/» и «www». К примеру, ресурсы Aflife.ru и www.Aflife.ru поисковик воспримет как отличающиеся друг от друга ресурсы. В будущем боты объединят оба этих адреса, однако за это время у вас вряд ли получится достигнуть желаемых показателей посещаемости. В таком случае наилучшим решением будет настройка редиректа.

Как настроить редирект с http на https через htaccess

Наиболее популярный сервис Apache предлагает эффективные решения для пользователей, избавляющие от необходимости обращаться в глобальный конфиг httpd. conf). Для этого применяется файл дополнительной конфигурации .htaccess, размещенный в каталоге ресурса. Именно этот файл позволяет выполнить удобную настройку редиректа с http на https.

Для этого можно использовать разные текстовые редакторы типа vim, nano, mcedit др. В файле нужно прописать:

RewriteEngine On

RewriteCond %{HTTPS} !=on

Если редирект не заработал, можно использовать еще один способ настройки через htaccess:

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

В этом случае работает правило Redirect 301 (при запросе доступа к странице на версии http сервер будет выдавать ответ о ее переезде на адрес с https). После изменения файл нужно сохранить.

Проксирование

Проксирование, в отличие от редиректа, не передает инструкции браузеру перейти на другой url — NGINX сам выполняет http-запрос по другому адресу и возвращает готовый ответ. Эта возможность может применяться для внутреннего распределения серверных ресурсов.

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

1. На другой сервер

Пример внутреннего перенаправления http-запроса на другой веб-сервер:


location / {
            proxy_pass $scheme://192.168.0.15:8080/;
            proxy_redirect     off;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}

* в данном случае, принимать запросы от браузера и отвечать на них будет NGINX, а сама обработка будет выполняться на сервере с IP-адресом 192.168.0.15 на порту 8080.

Использование NGINX в качестве http-прокси:

server {
        …
        server_name site1.ru www.site1.ru;
        location / {
            proxy_pass http://192.168.1.21/;
            proxy_redirect     off;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
}
server {
        …
        server_name site2.ru www.site2.ru;
        location / {
            proxy_pass http://192.168.1.22/;
            proxy_redirect     off;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
}

* в данном примере запросы на site1.ru будут перекинуты на сервер 192.168.1.21, а запросы на site2.ru — 192.168.1.22.

HTTP proxy с авторизацией (если удаленный веб-сервер требует аутентификации):

server {
    …
    location / {
        proxy_pass http://10.10.10.10/page/;
        proxy_set_header Authorization «Basic dGVzdDp0ZXN0»;
        …
    }
}

* где 10.10.10.10/page — страница, на которую будут перекинуты запросы; dGVzdDp0ZXN0 — логин:пароль test:test, закодированные в формате base64.

2. Часть url на другой сервер

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

server {
    …
    location  ~ ^/page1/(.*)$ {
        proxy_pass   $scheme://10.10.10.10/$1;
    }
}

* и так, в данном примере при обращении по адресу site.ru/page1/<что-то еще>, nginx сделает внутренний запрос на сервер 10.10.10.10 по адресу 10.10.10.10/<что-то еще> и вернет готовый ответ.

3. На другой сайт

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

server {
    …
    location / {
        proxy_pass https://www.dmosk.ru;
        proxy_set_header   Host             www.dmosk.ru;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    }
}

* в данном случае мы при обращении к нашему серверу будем попадать на сайт https://www.dmosk.ru

Обратите внимание, что в proxy_set_header мы передаем хосту его имя — в противном случае, как правило, другой сервер вернет ошибку. Также мы не указываем proxy_redirect, иначе, nginx будет переводить запросы на реальный сайт (отправлять инструкции браузеру перейти на него), а не тот, что мы используем за http-прокси

4. Редиректы при проксировании

Если при проксировании хост возвращает инструкцию браузеру для выполнения редиректа, обозреватель может сменить адрес сайта. Это особенно не удобно, когда проксирование мы выполняем на другой сайт. Чтобы отловить редиректы и заменить их своими значениями, мы должны воспользоваться опцией proxy_redirect. Рассмотрим ее применение для предыдущего примера, когда мы проксировали запрос на сайт www.dmosk.ru:

server {
    listen 80;
    server_name dmosk.local www.dmosk.local;
    location / {
        proxy_pass https://www.dmosk.ru;
        proxy_set_header   Host             www.dmosk.ru;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_redirect https://www.dmosk.ru/url1 http://dmosk.local/url2;
        proxy_redirect https://www.dmosk.ru/ http://dmosk.local/;
    }
}

* в конкретном случае мы проксируем запросы http://dmosk.local на сайт www.dmosk.ru, но если он вернет инструкцию для редиректа https://www.dmosk.ru/url1, в браузере он должен быть заменен на http://dmosk.local/url2. А также любое перенаправление для https://www.dmosk.ru/ будет заменено на http://dmosk.local/.

Как сделать переадресацию 301

Существует много способов сделать переадресацию 301, но самый распространенный метод — отредактировать файл .htaccess вашего сайта.

Вы найдете его в корневой папке вашего сайта:

Не видите файл? Это означает одно из двух:

  1. У вас нет файла .htaccess. Создайте его с помощью Блокнота (Notepad в Windows) или TextEdit (Mac). Просто создайте новый документ и сохраните его с расширением .htaccess. Обязательно удалите стандартное расширение файла .txt.
  2. Ваш сайт работает не на веб-сервере Apache. Это скорее технический аспект, но существуют разные типы веб-серверов. Apache, Windows/IIS и Nginx являются наиболее распространенными. Только серверы Apache используют файлы .htaccess. Чтобы проверить, работает ли ваш сайт на Apache, используйте этот инструмент. Убедитесь, что в разделе «История хостинга» (Hosting History), в колонке «Веб-сервер» (Web server) указано «Apache».

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

ВАЖНО. Эти инструкции предназначены исключительно для веб-серверов Apache. Здесь можно почитать, что делать, если ваш сайт работает на Nginx, а здесь — если ваш сайт работает на Windows/IIS

Перенаправление старой страницы на новую

 Redirect 301 /old-page.html /new-page.html 

Используете WordPress? Можно избавиться от необходимости самостоятельно редактировать файл .htaccess, если воспользоваться бесплатным плагином Redirection.

Добавить 301 редирект станет намного проще:

Перенаправление старого домена на новый

 RewriteEngine on
RewriteCond %{HTTP_HOST} ^oldsite.com 
RewriteCond %{HTTP_HOST} ^www.oldsite.com 
RewriteRule ^(.*)$ https://newsite.com/$1  

Примечание. Существует несколько способов это сделать. Я ни в коем случае не эксперт в том, что касается серверов Apache и файлов .htaccess. Этот код у меня всегда срабатывал. Но вам следует обязательно протестировать его перед внедрением на своем сайте. 

ВАЖНО! Если уже есть в вашем файле .htaccess, не повторяйте его. Просто скопируйте остальную часть кода

Это можно сделать и в Cpanel, если так удобнее.

Перенаправление всего домена с версии без www на версию с www (и наоборот)

Вот вариант для перенаправления с версии без www на версию с www:

 RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com 
RewriteRule ^(.*)$ http://www.example.com/$1  

Вот вариант для перенаправления с версии с www на версию без www:

 RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com 
RewriteRule ^(.*)$ http://example.com/$1  

ВАЖНО! Расположение и порядок кода в вашем файле .htaccess также имеет значение. Вы можете столкнуться с нежелательными последствиями, если несколько команд размещены в «неправильном» порядке (например, в случае цепочек переадресаций и т. д.)

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

Перенаправление всего домена с HTTP на HTTPS

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} 

ВАЖНО! Чтобы все правильно работало, на сайте должен быть установлен сертификат SSL. В противном случае вы получите предупреждающее сообщение «Соединение не защищено»

Перенаправление всего домена с версии без www на версию с www и с HTTP на HTTPS

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www. 
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} 
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} 

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

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

Браузерные редиректы представляют собой вставку вредоносного кода в страницу сайта. Данная вставка загружает по цепочке обычно достаточно большую связку других javascript, через которые происходит переадресация посетителей на сторонний ресурс (обычно это вредоносный ресурс).

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

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

Серверные редиректы бывают достаточно простые. Это небольшой фрагмент кода, вставленный в PHP файл. Если это код вставлен в статический файл (файл .htaccess), то его тоже достаточно просто найти обычным поиском по домену, на который происходит переадресация.

Поиск серверных редиректов можно выполнять вручную, просто выполнив поиск по файлам того домена, на который происходит переадресация. Можно также выполнять поиск с помощью специальных сканеров (например, AI-BOLIT).

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

Создание верхней панели навигации

Шаг 1) Добавить HTML:

Пример

<div class=»topnav»>  <a class=»active» href=»#home»>Главная</a>  <a href=»#news»>Новости</a>  <a href=»#contact»>Контакт</a>   <div class=»topnav-right»>    <a href=»#search»>Поиск</a>    <a href=»#about»>О Нас</a>  </div></div>

Шаг 2) Добавить CSS:

Пример

/* Добавить черный цвет фона для верхней навигации */.topnav {    background-color: #333;    overflow: hidden;}/* Стиль ссылок внутри панели навигации */.topnav a {  float: left;  color: #f2f2f2;  text-align: center;  padding: 14px 16px;  text-decoration: none;  font-size: 17px;}/* Изменение цвета ссылок при наведении курсора */ .topnav a:hover {  background-color: #ddd;  color: black; }/* Добавить цвет для активной/текущей ссылки */.topnav a.active {  background-color: #4CAF50;  color: white;}/* Выровненный по правому краю раздел внутри верхней навигации */.topnav-right {  float: right;}

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

Совет: Зайдите на наш учебник CSS Навигация чтобы узнать больше о навигационных барах.

Что такое RivaTuner Statistics Server? Как установить, настроить и пользоваться программой?

Понятие и назначение безопасного режима

В Windows 7 присутствуют диагностические режимы запуска операционной системы для решения тех или иных проблем. Один из них – безопасный или Safe mode (ещё называется режимом устранения сбоев) предназначен для выявления и устранения неполадок в Win 7, работе драйверов и аппаратных компонентов компьютера. В безопасном режиме запускается минимально возможный перечень процессов, служб и драйверов, необходимых для обеспечения работы операционной системы и основных аппаратных компонентов. Благодаря функционированию с ограниченными возможностями быстрее выявляются проблемы, ведь прикладное программное обеспечение не активно.

Настраиваем редиректы для SEO

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

При настройке 301 редиректов помните о двух правилах:

  1. Избегайте нескольких последовательных перенаправлений — они увеличивают нагрузку на сервер и снижают скорость работы сайта.
  2. Располагайте редиректы от частных к глобальным. Например, сначала переадресация с одной страницы на другую, затем общий редирект на страницы со слешем. Это правило работает не в 100% случаев, поэтому с размещением директив нужно экспериментировать.

1. Настраиваем постраничные 301 редиректы

Это потребуется в следующих случаях:

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

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

  • — адрес страницы от корня, без протокола и домена. Например, .
  • — полный адрес страницы перенаправления, включая протокол и домен. Например, .

2. Избавляемся от дублей

Каждая страница сайта должна быть доступна только по одному адресу. Для этого должны быть настроены:

  • редирект на страницы со слешем в конце URL или наоборот;
  • главное зеркало — основной адрес сайта в поиске.

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

Переадресация на слеш или наоборот

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

Код 301 редиректа на страницы без слеша:

3. Настраиваем главное зеркало

Для начала нужно определиться, какой адрес будет являться основным для поиска. SSL-сертификат давно уже мастхэв. Просто установите его и добавьте правило в .htaccess. Не забудьте также прописать его в robots.txt.

Редирект на HTTPS

Определять, с «www» или без будет главное зеркало, можно несколькими способами:

  • добавить сайт в Яндекс.Вебмастер в двух вариантах, в консоли отобразится информация, какой URL поисковик считает главным зеркалом;
  • проанализировать выдачу и посмотреть, каких страниц сайта больше в индексе;
  • для нового ресурса не имеет значения, с «www» или без будет адрес, выбор за вами.

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

Редирект с без www на www

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

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

Воспользуйтесь одним из вариантов кода:

или

Не забудьте поменять в коде «mysite1» и «mysite2» на старый и новый домен соответственно.

14-08-20

Поисковые фразы

Как сделать редирект через файл htaccess для интернет-магазина на Opencart

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

Redirect 301 site.ru/page1/ site.ru/page2/

Где:

  • page1- страница которая будет переадресовывать;
  • page2 – открывающийся документ.

Важно! Можно записывать адреса в относительном виде, например, /page1/ и /page2/. Также допускается использование конструкции:

Также допускается использование конструкции:

Redirect permanent site.ru/page1/ site.ru/page2/

Для того, чтобы выполнить правило, потребуется посетить административную панель хостинга (или же зайти через FTP), где в корневой папке сайта на Opencart (public_html) лежит файл htaccess :

Директива HOST

С директивой host мы уже встречались тогда, когда делали файл robots.txt. В нашем деле (обозначения главного зеркала сайта) она играет важную роль для поисковой системы Яндекс (Гугл ее не понимает). Если вы настроили этот файл по моим рекомендациям, то данная директива уже у вас имеется и показывает роботам Яндекса основное зеркало. Если же ее нет, то вам необходимо добавить одну строчку. Эта директива является внеблоковой, поэтому пишется либо в отдельной строке, не относящейся ни к какому поисковому роботу, либо указывается в блоке для yandex.

host: dmitriyzhilin.ru

Так же, главное зеркало блога, можно определить не только с помощью директивы Host, но и при помощи Инструментов для вебмастеров Яндекса – это www.webmaster.yandex.ru. Раньше аналогичная возможность была и в Google, но сейчас я ее не нашел.

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

Если настройка редиректа с http на https произошла с ошибкой

Чаще всего вебмастера обращаются с вопросом, почему после настройки редиректа поисковики по версии http не видят файл robots.txt (это значит, что он отдает ответ сервера вместо 200).

Эта проблема связана со статическими настройками сервера, обычно статический контент должен отдавать по http и по https.

Но даже, если это не происходит, нет смысла беспокоиться: все данные теперь доступны по https.

В файле .htaccess в порядке исключения может быть настроено дополнительное правило:

RewriteCond %{REQUEST_URI} !robots.txt

Наша запись должна получить примерно такой вид:

 RewriteCond %{HTTP_HOST} ^(www\.)?sitename\.com$

RewriteCond %{HTTP:X-Forwarded-Proto} !=https

 RewriteCond %{REQUEST_URI} !robots.txt

RewriteRule ^(.*)$

Затем нужно выполнить проверку ответа сервера.

Назначение редиректов

По своему назначению редиректы бывают:

  1. Мобильные редиректы – это переадресация посетителей, которые заходят на сайт со своих мобильных устройств.
  2. Поисковые редиректы – это переадресация посетителей, приходящих с поисковой системы (воровство поискового трафика).
  3. Редиректы на файлы вредоносной природы или на рекламные файлы. Их возможно наблюдать как на мобильных устройствах, так и на декстопах. Пользователю предлагается скачать некий вредоносный файл под видом обновления системных компонентов или какой-то известной программы. Также может наблюдаться загрузка вредоносного кода в браузере, который содержит некую уязвимость.

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

Все что мы описывали можно провернуть не только с одним доменом, но и с совершенно разными (для поисковиков они все разные).

Вот например возникли у вас проблемы с вашим хостингом, или просто разонравилось доменное имя (например было plohoy-domen.ru, а захотелось ochen-horoshiy-domen.com), как сделать новое доменное имя с тем условием, чтобы статьи которые вы писали не потерялись и постоянные читатели не исчезли. Опять же в помощь вам будет 301 редирект. Открываете файл .htaccess и добавляете в него нужный блок:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} plohoy-domen.ru 
RewriteRule ^(.*)$ http://ochen-horoshiy-domen/$1 

Теперь если в браузере вы будете набирать адрес plohoy-domen.ru, то вас автоматически будет перебрасывать на страницу ochen-horoshiy-domen.com.

Очень важно не ошибиться при выборе Host-а и в том, как будет осуществляться поиск вашего блога с www или без, так как ошибки могут привести к тому, что ваш ресурс может быть выкинут из индекса. На этом у меня все, уважаемы читатели

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

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

(adsbygoogle = window.adsbygoogle || []).push({});

Самая лучшая стратегия для 301 редиректов

Самой выгодной стратегией перехода на новый домен будет учитывать все основные правила двух главных поисковиков – Google:

  • Проставляем 301 редирект со старого на новый сайт.
  • Хотя мы не делаем переадресации для служебного файла robots.txt, но прописываем директиву Host для нового домена.

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

При этом в файле robots.txt для старого сайта прописываем:

Создание 301 редиректов

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

  • http://www.webconfs.com/seo-tools/similar-page-checker/
  • http://www.rapidtables.com/web/tools/redirect-generator.html

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

Как проверить 301 редирект?

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

  • Работает ли вообще сайт? – зайдите на главную страницу;
  • проверьте все ключевые страницы и разделы сайта на предмет ошибок.

Для более комплексной проверки редиректов существует еще несколько надежных сервисов:

  • http://bertal.ru/ – предоставляет максимально комплексные данные об ответах сервера.
  • http://www.internetmarketingninjas.com/header-checker/.

Путь хранения файлов сессий

Разновидности редиректа

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

301

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

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

Рекомендую обращать внимание на этот вид редиректа только в тех случаях, когда вы полностью уверены в том, что имеющийся адрес вам больше никогда не пригодится

302

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

Когда вам необходимо перевести сайт на другое доменное имя или масштабно обновить его, применять данный вид редиректа не рекомендуется. Это чревато тем, что поисковик будет отображать сразу два варианта страниц, из-за чего возникнет полное повторение. Также следует не забывать о том, что если Google посчитает, что редирект был использован неправильно, все показатели СЕО будут перенесены на новый адрес, когда как старый полностью исчезнет из выдачи.

307

Он также подразумевает временную смену адреса, однако в отличие от 302 изначальная версия ресурса сохранит свои позиции. Поисковики, в свою очередь, воспринимают его практически так же, как и 302.

Помимо вышеперечисленных существует ещё несколько разновидностей редиректа. О каждой из них можно рассказать вкратце:

  1. 300. Подразумевает наличие нескольких адресов, на которые может быть перенаправлен пользователь исходя из того, как настроен его браузер.
  2. 303. В данном случае нужный документ был найден, однако для его отображения на сайте нужно будет применить GET.
  3. 304. В случае с ним появится информация о том, что сайт никак не был изменён после визита, а браузер загрузит страницу, сохранённую в кэше.
  4. 305. Редирект выполняется на прокси-сервере, после чего выполняется перенаправление по вопросу, заданному в поисковике.

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

Благодарю вас за внимание, всего хорошего!

Почему 301 редирект, а не canonical

Например:

<link rel=»canonical» href=»http://www.web-profy.com/page.html&quot; />

Тег rel=canonical актуален в тех случаях, когда необходимо сообщить поисковой машине единый целый адрес контента страницы. При таком варианте вашему сайту не помешает использовать динамические переменные атрибутов для URL-ов. Динамические URL могут способствовать индексации нескольких версий URL для каждой отдельной страницы, что выражается в дублировании контента (крайне нелюбимый вариант для большинства поисковиков).

Конечно, тег с атрибутом rel=canonical может выручить в целом ряде случаев, однако он не способен полноценно заменить 301 редирект сайта. Для этого есть несколько оснований:

  1. Поисковые машины не воспринимают тег rel=canonical в качестве адресного указания к действию, а вот 301 редирект оказывается той самой инструкцией, обязательной к исполнению.
  2. Многие системные администраторы отдают предпочтение именно 301 редиректу потому, что он прописывается в одном файле для всего сайта, а код тега rel=canonical вставляется на каждой странице.

Тег rel=canonical становится актуальным при переадресации страниц блога (при наличии доступа к его коду, позволяющего внести в него необходимые модульные теги). Если же необходимость в использовании 301 редиректа возникает тогда, когда сайт давно и успешно работает и наполнен нужным контентом, это может привести к потере исходных страниц и связанных с ними комментариев, социальных связей, которые наверняка уже прописаны в SEO.

Рекомендуемые статьи по данной теме:

  • Адаптивная верстка сайта: гайд для начинающих
  • Файл htaccess: применение, включение, настройка
  • Внешняя оптимизация сайта: этапы, сервисы, помощь
Добавить комментарий

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

Adblock
detector