CityHost.UA
Помощь и поддержка

Как настроить HTTPS для 1С-Битрикс

 4114
21.04.2020
article

Настроить https для 1С-Битрикс несложно. На стандартных шаблонах обычно используются относительные ссылки (не указывается протокол и даже домен сайта). И это избавляет от необходимости вносить кардинальные изменения. Все, что требуется – купить и установить SSL-сертификат, а потом все перепроверить. И при необходимости – внести небольшие изменения.

Рекомендации по настройке

Перед тем как настроить https для 1С-Битрикс, необходимо знать, какие бывают ссылки. Всего различают 4 вида. Первый – это относительные (/blog/). Также есть 3 вида абсолютных линков:

  • с относительным протоколом (sait.com.ua/blog/);
  • с протоколом https (https://sait.ua/blog/);
  • с протоколом http (http://sait.ua/blog/)/.

Избавляться надо от последних. Именно из-за них возникают ошибки mixed content («смешанный контент»).

Теперь можно настраивать https для 1С-Битрикс. Для этого надо:

  1. Убедиться в работоспособности форм связи на веб-ресурсе. Периодически в ajax-запросах встречаются абсолютные линки, отправляющие данные. Они станут неактивными, если не заменить их на https-линки.
  2. Проверить выгрузки на Rozetka и прочих площадках. Нередко в скриптах выгрузки строго прописывается протокол. И тут придется по новой генерировать все файлы выгрузки. Для этого надо выбрать пункты: Раб. стол – Магазин – Настройки – Экспорт данных. И затем поставить птичку в поле «Использовать в выгрузке https протокол в выгрузке Yandex».
  3. Настроить перенаправление пользователей на https.

Последний пункт реализуется через .htaccess несколькими способами:

RewriteEngine on

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

RewriteEngine On

RewriteCond %{HTTPS} off

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

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{ENV:HTTPS} !on

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP:X-HTTPS} !1

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

RewriteEngine On

RewriteCond %{HTTP:SSL} !1

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L,R=301]

Далее в настройках интеграции с софтом 1С прописывается линк с https. Получится так:

https://site.com/bitrix/admin/1c_exchange.php

Учитывайте, что https протокол поддерживается только на версии 8.3.4 и выше. Поэтому убедитесь, что у вас соответствующая версия.

Если настроить интеграцию с 1С по https невозможно – оставьте http. Надо лишь отредактировать обычный редирект на https следующим образом:

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

RewriteCond %{REQUEST_URI} !^/bitrix/admin/1c_exchange\.php$ [NC]

RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

Если используете CDN – зайдите в настройки сервиса «Ускорение сайта CDN». И затем поставьте птичку в поле «Сайт работает по https».

И не забудьте включить https для линков в email-письмах. Делается это в настройках модуля «E-mail маркетинг».

Все, настройка https для 1С-Битрикс считается завершенной.

Если возникнут проблемы – обращайтесь за помощью в техподдержку. Сообщите им, что у вас сайт на 1С-Битрикс, и что вы хотите настроить https. Сотрудники техподдержки уточнят суть проблемы и помогут ее решить.


Понравилась статья? Расскажите о ней друзьям: