top
Вход

Поддержка24

Интеграция «1С-Битрикс: Управление сайтом» и Битрикс24

Вы можете отслеживать заказы, оплату и отгрузку товаров с магазина «1С-Битрикс: Управление сайтом» в вашем Битрикс24 с помощью специального приложения Обмен с 1С-Битрикс Управление сайтом. Для такой интеграции необходимо настроить сервер, на котором работает сайт с магазином.


Как это сделать

На большинстве серверах запрещено показывать страницы сайта в iframe-ах на сторонних ресурсах.

Вам нужно создать правило на сервере, которое разрешает открывать страницы в iframe на сторонних сайтах. Делается это с помощью добавления специального HTTP-заголовка Content-Security-Policy к страницам административного раздела:

/bitrix/admin/sale_order.php
/bitrix/admin/sale_order_create.php
/bitrix/admin/sale_order_edit.php
/bitrix/admin/sale_order_view.php
/bitrix/admin/sale_order_payment_edit.php
/bitrix/admin/sale_order_shipment_edit.php
/bitrix/admin/sale_delivery_request_view.php
/bitrix/admin/sale_delivery_request.php
/bitrix/admin/sale_app_rest_sender.php

Например, в «1C-Битрикс: Виртуальная машина» версии 7.4.3 сделать это можно так:

  1. Создать файл /etc/nginx/bx/site_avaliable/bx_exclude_x_frame.conf с таким содержимым (замените адрес вашего Битрикс24 в коде):
    location ~* ^/bitrix/admin/sale_(order|delivery|app_rest_sender).*\.php$ {
    	add_header Content-Security-Policy "frame-ancestors https://адрес_вашего_Битрикс24;";
    	proxy_pass $proxyserver;
    }
    Обратите внимание, что в целях безопасности мы указываем конкретные адреса Битрикс24, которым нужно разрешить доступ к страницам магазина в iframe – например https://portal1.bitrix24.ru. Если нужно дать доступ нескольким Битрикс24, то их адреса указываются через пробел. Можно указать только домен, а можно и конкретный адрес (например https://portal1.bitrix24.ru/section/page.php).
  2. Найти 2 конфигурационных файла вашего сайта в директории /etc/nginx/bx/site_avaliable/.

    Например, для сайта mysite.ru файлы настроек могут быть такие:

    bx_ext_mysite.ru.conf – файл настроек сайта при http-подключении.
    bx_ext_ssl_mysite.ru.conf – файл настроек сайта при https-подключении.

    И прописать в секцию server каждого файла код:

     include bx/site_avaliable/bx_exclude_x_frame.conf; 

  3. Проверить, нет ли ошибок в конфигурационных файлах nginx:
     nginx -t 
  4. Если все хорошо, далее нужно перезагрузить конфигурационные файлы nginx:

    CentOS 6:
     service nginx reload 
    CentOS 7:
     systemctl reload nginx.service 

Если вы используете бета-версию 7.4.10 и выше «1C-Битрикс: Виртуальной машины», то достаточно всего лишь создать файл /etc/nginx/bx/site_settings/<SITE_NAME>/bx_exclude_x_frame.conf с тем же содержимым из п.1. После перезапуска nginx настройки из этого файла применятся к сайту <SITE_NAME>.

Например, для сайта mysite.ru путь к файлу будет таким: /etc/nginx/bx/site_settings/mysite.ru/bx_exclude_x_frame.conf.


Советуем прочитать:
Спасибо, помогло! Спасибо :) Не помогло Очень жаль :( Оставить отзыв
Уточните, пожалуйста, почему:
Это не то, что я ищу
Очень сложно и непонятно