Переезд на HTTPS на примере Retail.ru. Битрикс переезд на https
Что делать если после переезда на https упала выгрузка с 1С. Битрикс
Из коробки 1С не умеет работать с сайтами на https и поэтому после редиректа сайта выгрузка перестаёт работать. Правильным выходом, конечно, будет обратиться к специалистам 1С чтобы они сделали доработку, тогда ваша выгрузка снова заработает. Но что делать если нет возможности обратиться к специалистам 1С, а выгрузка нужна здесь и сейчас?! Попытаюсь ответить на этот вопрос, но замечу что это временный способ, и он не рекомендуется.
О выгрузке (обмене с сайтом)
Как вы поняли из заголовка речь сейчас идёт о сайте под управлением CMS «1С Битрикс Управление сайтом», так что я пишу эту статью с поправкой что речь идёт о конкретной CMS.
Чтобы 1С выгружал на сайт ему нужно обратиться к файлу, который расположен по адресу /bitrix/admin/1c_exchange.php относительно корня сайта. Следовательно, чтобы выгрузка заработала нужно чтобы этот файл был доступен по http.
Редирект
опустим вы пользуетесь вот таким редиректом:
RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] |
Думаю, не нужно вам рассказывать в подробностях, ведь данная статья понадобиться вам только если вы уже перешли на https и выгрузка перестала работать. Если вам нужно узнать подробнее о переходе на https то прочитайте эту статью.
Чтобы выгрузка заработала нужно редирект изменить на этот:
RewriteCond %{SERVER_PORT} !^443$ RewriteCond %{REQUEST_URI} !/bitrix/admin/1c_exchange.php RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{SERVER_PORT} !^443$ RewriteCond %{REQUEST_URI} !/bitrix/admin/1c_exchange.php RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] |
Тогда ваш файл станет доступен по http и выгрузка снова заработает.
Ещё пример:
RewriteEngine On RewriteCond %{HTTP:X-Forwarded-Proto} !=https [OR] RewriteCond %{HTTP_HOST} ^www.example.com$ [NC] RewriteCond %{REQUEST_URI} !/bitrix/admin/1c_exchange.php RewriteRule ^(.*)$ https:// example.com/$1 [R=301,L]
RewriteEngine On RewriteCond %{HTTP:X-Forwarded-Proto} !=https [OR] RewriteCond %{HTTP_HOST} ^www.example.com$ [NC] RewriteCond %{REQUEST_URI} !/bitrix/admin/1c_exchange.php RewriteRule ^(.*)$ https:// example.com/$1 [R=301,L] |
Тут уже пример в котором учтён редирект с www.
Способ для IP
Вы можете сделать доступным сайт по http, не только для одного файла, но и для целого сайта для пользователя с определённым IP. Я считаю, что это более безопасный способ, но у него есть и недостаток, вам нужен статический IP, что не всегда возможно, например если в вашей компании стоит балансировщик нагрузки на сеть и вы можете подключиться под разным ip. Для пользователей ноутбуков это будет не актуально т.к. они подключаются из разных сетей.
Редирект для исключения по IP, пример
RewriteCond %{HTTP:X-Forwarded-Proto} !=https [OR] RewriteCond %{HTTP_HOST} ^www.example.ru$ [NC] [OR] RewriteCond %{REMOTE_ADDR} !=178.110.15.26 RewriteRule ^(.*)$ https://example.ru/$1 [R=301,L]
RewriteCond %{HTTP:X-Forwarded-Proto} !=https [OR] RewriteCond %{HTTP_HOST} ^www.example.ru$ [NC] [OR] RewriteCond %{REMOTE_ADDR} !=178.110.15.26 RewriteRule ^(.*)$ https://example.ru/$1 [R=301,L] |
не забываем поставить свой ip
Для 1С
Как я уже упоминал, приведённые примеры должны быть временными решениями. Следовательно нужно чтобы были проведены изменение настроек в 1С. О настройках сертификатов вы можете прочитать в статье по ссылке.
P.S
Если вы прочитали статью до конца напишите в комментарии пригодился бы вам инструмент для массовой проверки редиректов. Заранее спасибо!)
Работаем на Битрикc и у нас всё будет хорошо. А пока подписывайтесь на мой ВК и Instagramm (ссылки в подвале), пользуйтесь моим сервисом строки, ищите вхождения ключевых фраз. Поддержите проект, зарегистрируйтесь по реферальной ссылке на хостинге beget, он действительно классный, о нём вы можете прочитать в этом отзыве.
Навигация по записям
xakplant.ru
Переезд на HTTPS на примере Retail.ru — CMS Magazine
задача
С января 2017 года Google понижает в выдаче сайты, работающие не по защищенному протоколу HTTPS. Требуется подключить HTTPS и минимизировать потери поискового трафика во время переезда.Иногда бывает очень страшно.
Почему? Потому что в крупных проектах очень легко испортить ситуацию, особенно если ты отвечаешь за трафик.
Одно неверное движение, и новостной сайт лишится трафика, интернет-магазин — заказов, а сервисная компания звонков. Если планируете перевод сайта на HTTPS (вообще говоря, уже давно пора запланировать!), лучше поручить задачу ИНТЕРВОЛГЕ как компетентному веб-интегратору. У нас есть специалисты по работе с SEO, администраторы веб-серверов и веб-разработчики.
Все эти компетенции нужны для переезда на HTTPS.
Retail.ru — новостной портал для ретейлеров и поставщиков. ИНТЕРВОЛГА сотрудничает с Retail.ru с 2015 года. Мы выполняем задачи по поисковому продвижению и рекламе — у портала есть дочерние проекты, которые требуют интернет-маркетинга.
В декабре 2016 было принято решение перевести портал на защищенный протокол HTTPS.
Зачем? С одной стороны, портал развивается и должен соответствовать современным требованиям безопасности. На сайте есть каталог книг для продажи, корзина, формы регистрации, требующие защищенного соединения. С другой стороны — в январе 2017 Google начал понижать сайты, передающие персональные данные пользователя без HTTPS, в поисковой выдаче.
Требование наличия HTTPS в 2017 году игнорировать нельзя.
Чисто теоретически (с точки зрения техники процесса) задача простая — купить сертификат и настроить сервер.
Однако, есть риск потери поискового трафика. Для поисковика сайты с HTTP и HTTPS — разные. Мы должны настроить перенаправления между ними и обеспечить индексацию.
Перчика задаче добавляют различия в требованиях поисковиков к порядку действий по переезду на HTTPS.
Капелька ликбеза. Предполагаем, что вы знакомы с терминами HTTP, HTTPS, SSL, TLS. В интернете много информации по теме, например (https://ru.wikipedia.org/wiki/HTTPS , https://ru.wikipedia.org/wiki/TLS ). Одна из лучших статей подготовлена Яндексом — https://yandex.ru/blog/company/77455 .
Какие сайты должны перейти на HTTPS
Если вы найдете себя в этом списке, нужно не теряя времени переходить на HTTPS. Есть риск не только потери поискового трафика. Пользователь, который увидит предупреждение браузера «Ваше соединение не защищено» может покинуть сайт.
HTTPS рекомендован:
- Любому интернет-магазину, который принимает оплату картами или другими платежными средствами на сайте.
- Интернет-магазину, который планирует подключить программу «Заказ на Маркете ».
- Сайтам, на которых пользователи регистрируются и указывают свои персональные данные. Например, форумы, блоги, сайты по приему показаний для ЖКХ, онлайн-регистратуры медицинских учреждений.
- Сайты услуг, которые пользователи могут заказывать онлайн — выезд мастера на дом, ремонт телефонов, бронирование билетов и жилья.
Если вы принимаете любые пользовательские данные, представляющие интерес для злоумышленников, подключайте HTTPS.
Кроме того, свежие версии Chrome (популярнейшего браузера) помечают защищенные сайты меткой
Google как бы намекает, что остальные сайты НЕ надежные.
Кстати, следующий в очередь на перевод на https наш собственный сайт – сначала версия для глобального рынка, потом российский.
Рекомендации по выбору приоритета между Яндексом и Google
Перед переездом определитесь с приоритетной поисковой системой. Для каждого поисковика своя последовательность действий. Инструкция придет на почту всем, кто поделится статьей в социальных сетях.
Если сомневаетесь в выборе, посмотрите на отчеты по конверсиям из поиска. Если какой-то поисковик обеспечивает вам большую конверсию, ориентируйтесь на него.
Яндекс | |
Ориентир для молодых сайтов (домену меньше года) | Ориентир для новостных или городских порталов с тысячами и десятками тысяч статей. |
Интернет-магазин или сайт услуг, работающий на территории России. | Сайты, ориентированные на западную (или мировую) аудиторию. |
Порядок действий по переходу на HTTPS
Мы предполагаем, что у вашего сайта нет технических проблем. Панели для вебмастеров Яндекс и Google показывают отсутствие ошибок и рекомендаций.
Ваш порядок действий:
- Определиться (или уточнить у специалистов), какой домен является «главным зеркалом». Это важно для настройки перенаправлений на HTTPS. Ваше новое главное зеркало будет иметь адрес с HTTPS.
- Приобрести сертификат безопасности, настроить сервер, чтобы сайт работал по https://<адрес главного зеркала>. Сайт должен быть доступен по двум протоколам одновременно.
- Как только вы открыли сайт по протоколу HTTPS, он вероятно начнет индексироваться. Активные действия по настройке панелей вебмастера нужно выполнять быстро. Не забудьте настроить, чтобы картинки, pdf-ки, и прочий так называемый «mixed content» также был доступен по HTTPS.
- Определиться с приоритетной поисковой системой — Яндекс или Google. Следующий шаг различается для каждой системы.
- Выполнить настройку сайта и панели вебмастера Яндекс и Google по инструкции. Самый важный пункт. Если его сделать неправильно, вы рискуете потерять трафик.
- Настроить постраничный 301 редирект между HTTP и HTTPS. Для большинства случаев (Apache в качестве веб-сервера) подойдет следующая инструкция: RewriteCond %{HTTPS} !=on RewriteRule ^https://www.intervolga.ru%{REQUEST_URI} [R=301,L] Подробности настройки 301 редиректов для 1С-Битрикс есть в нашей статье.
- Подключить технологию HSTS — https://ru.wikipedia.org/wiki/HSTS .
- Мониторить индексацию и позиции в выдаче.
Если все сделано правильно, потерь не произойдет, а позиции вырастут. Поисковики любят HTTPS.
Как мы переводили Retail.ru
Для Retail.ru приоритетной поисковой системой выбран Google. Он привел за год 54% трафика против 44% Яндекса.
Переезд на HTTPS был запланирован на последний рабочий день года 30 декабря. 2 недели праздников будет достаточно, чтобы основные страницы сайта проиндексировались в Google.
Первым делом мы написали техническое задание о настройке редиректов для программистов портала и убедились, что они готовы его выполнить по нашей просьбе.
Далее выполнили шаги по переходу на HTTPS. Детальная инструкция доступна в закрытой части статьи. Инструкция придет на почту тем, кто поделится статьей в социальных сетях.
Результаты перевода сайта на HTTPS
- За 2 недели в индексе почти не осталось страниц HTTP-версии.
- За эти же 2 недели в индексе появилась HTTPS-версия сайта.
- На данный момент Google знает о ~250 тысячах страниц сайта.
- Поисковый трафик растет. Смотрите ниже. В последний понедельник января Google показал рекорд за последние 3 месяца.
«Спящий розовый слон» или Выпадение страниц из индекса Яндекса.
«Просыпающийся зеленый слон» или Индексация HTTPS-версии Яндексом.
Поисковый трафик немного подрос
Спорные рекомендации:
Мы не проверили эти рекомендации из официальной справки Google. Их польза не доказана.
- Google рекомендует сделать 2 (!) карты сайта — со старыми (хотя бы на месяц) и новыми адресами. В нашем примере мы не делали этого — поисковик разобрался сам.
- Google рекомендует переносить крупный сайт по частям (а не весь). Критерий крупности Google нам неизвестен. Для retail.ru с его 50+ тысячами страниц все прошло хорошо.
Вывод
Задача по переводу сайта на HTTPS не выглядит сложной, если во всем разобраться и действовать по инструкции.
Перед переездом нужно провести подготовку — купить сертификат, настроить сервер, сайт и панель вебмастера. Если вы не профессиональный администратор - лучше обратиться к вашему хостеру, обычно услуга «SSL-сертификат + установка + выделенный IP» есть у всех и помогает сэкономить много нервов.
У нас есть хороший кейс перевода крупного портала retail.ru. У вас тоже все получится.
Мы готовы помочь вам с переездом. Отправьте заявку на адрес [email protected] или позвоните на номер +7 495 648-57-90.
cases.cmsmagazine.ru
Переадресация запросов http на https
Если на своём домене вы используете SSL-сертификат и у вас появилась необходимость переадресовывать все запросы по протоколу HTTP на HTTPS, то добавьте в в начале файла .htaccess следующие строчки:
RewriteEngine On RewriteCond %{REQUEST_URI} !^/robots\.txt$ RewriteCond %{HTTP:X-Forwarded-proto} !^https$ RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]Для правильной работы вашего сайта по протоколу https необходимо для элементов, которые открываются по небезопасному протоколу http, заменить ссылки. Например, если у вас указан путь к определенному контенту таким образом: http://ваш-домен.ru/banner.gif, то нужно поменять адрес на https://ваш-домен.ru/banner.gif Для элементов, которые загружаются с внешних серверов, также необходимо изменить ссылки. При этом важно чтобы сайт, где расположен элемент, также использовал валидный SSL сертификат.
Обязательно переключить свои CMS для работы по защищенному протоколу.
Если вы используете CMS Joomla, то отредактируйте файл configuration.php и пропишите правильные значения в следующих строчках: было:
public $live_site ='http://ваш-домен.ru';стало:
public $live_site ='https://ваш-домен.ru';было:
public $force_ssl = '0';стало:
public $force_ssl = '1';
Если вы используете Wordpress, то зайдите в админку своего сайта, откройте раздел "Настройки" -> "Общие" и в полях "Адрес сайта" и "Адрес WordPress" поменяйте протокол на https.
Если вы используете CMS 1C-Bitrix, то настройте https-соединение по инструкции от разработчиков.
В OpenCart откройте панель управления вашим магазином и перейдите в раздел "Система" -> "Настройки" на вкладке Сервер выберите Использовать SSL: Да. В файле config.php, который расположен в корневой папке магазина и в директории /admin, замените все ссылки http:// на https://.
В Drupal (до 8 версии) откройте файл /sites/default/settings.php и добавьте следующую строчку:
$conf['https'] = TRUE;mchost.ru