Настройка вкладок “Правка заказа” и “Добавить товары”

Если вкладка открывается пустой

Если на странице сделки вкладки “Правка заказа” и “Добавить товар” открываются пустыми (обычно с серым фоном), произведите следующие действия:

  1. В админ. панели интернет-магазина в разделе “Защита от фреймов” необходимо добавить два исключения: /bitrix/admin/sale_order* и /bitrix/admin/sprod_integr_* (если данная защита включена).
  2. Посмотреть, какие ошибки выдаёт консоль вашего веб-браузера в момент открытия вкладки “Правка заказа”. Обычно, это два типа ошибок, связанные с настройкой Cross-Origin Resource Sharing (CORS).
  3. Первый тип ошибок – на сервере закрыт доступ к содержимому сайта из iframe-ов директивой Access-Control-Allow-Origin со значением “origin-list”. Решение: прописать в данный параметр адрес вашего портала в формате “Access-Control-Allow-Origin: адрес-портала”. Для NGINX это будет выглядеть так: add_header Access-Control-Allow-Origin https://адрес-портала;
  4. Второй тип ошибок – доступ к iframe-ам закрыт директивой X-Frame-Options со значением SAMEORIGIN. Решение: прописать у директивы Content-Security-Policy параметр frame-ancestors. Для NGINX это будет выглядеть так: add_header Content-Security-Policy "frame-ancestors 'self' адрес-портала;"; (адрес портала должен быть без https).

Бесконечная авторизация

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

Дело в новой защитной системе браузера Chrome (и других браузеров, созданных по той же технологии) – параметре SameSite для хранения cookies. Для решения данной проблемы необходимо внести дополнительные настройки на сервер вашего интернет-магазина.

В конфигурации www-домена вашего интернет-магазина в настройках Apache в секции VirtualHost необходимо добавить следующую строку
Header edit Set-Cookie ^((BITRIX_SM_LOGIN|BITRIX_SM_SALE_UID|BITRIX_SM_UIDL|BITRIX_SM_UIDH|BITRIX_CONVERSION_CONTEXT_s1|PHPSESSID|BITRIX_SM_LAST_SETTINGS|BITRIX_SM_GUEST_ID|BITRIX_SM_SOUND_LOGIN_PLAYED|BITRIX_SM_LAST_VISIT).*)$ "$1;Secure;SameSite=None"

Важно! Данные настройки на сервере должен производить специалист, компетентный в настройках вашего сервера. Каждый сервер конфигурируется по-разному, поэтому нет одной схемы внесения данных настроек для всех сайтов.

PS: Данные настройки не понадобятся, когда Битрикс в своём ядре станет учитывать данный параметр.