При разработке на платформе 1С:Предприятие 8.3 программисты часто сталкиваются с задачей отображения внешнего контента во внутренних формах приложения. Для этого используется объект Поле HTML-документа. Однако в корпоративных сетях, где доступ в интернет жестко ограничен и осуществляется через прокси-сервер, возникает специфическая проблема: обычные http страницы загружаются корректно, а защищенные https ресурсы выдают ошибку или пустую страницу. При этом в логах прокси-сервера запросы по протоколу HTTPS могут попросту отсутствовать.
В этой статье мы подробно разберем, почему возникает такая ситуация, и проанализируем пошагово все уровни настроек — от конфигурационных файлов 1С до параметров операционной системы и сетевого оборудования. Давайте вместе разберемся в причинах и найдем решение.
Прежде всего, нам необходимо понять важную техническую деталь: платформа 1С использует разные механизмы для выполнения программных запросов и для отображения визуального контента. Рассмотрим подробнее:
inetcfg.xml. Он используется для обмена данными с API, загрузки файлов и других фоновых задач.Выясним причину: если HTTPСоединение через inetcfg.xml работает, а поле HTML — нет, значит, проблему нужно искать в настройках операционной системы или в том, как прокси идентифицирует запросы от браузерного движка 1С.
Первым делом проверим правильность заполнения файла inetcfg.xml. Этот файл должен располагаться в каталоге конфигурирования платформы (обычно это C:\Program Files\1cv8\conf). Проанализируем правильный синтаксис, так как платформа чувствительна к формату написания протоколов.
Попробуем явно разделить настройки для разных протоколов. Обратите внимание, что в поле host для HTTPS часто не нужно указывать префикс протокола:
<config xmlns="http://v8.1c.ru/8.2/iproxy/config">
<proxy protocol="http" host="192.168.1.1" port="8080" />
<proxy protocol="https" host="192.168.1.1" port="8080" />
</config>
Важный нюанс: Если прокси-сервер требует авторизации, убедитесь, что параметры пользователя указаны корректно. Однако помните, что хранение паролей в открытом виде в XML-файле небезопасно. Проанализируем ситуацию: если после появления этого файла http заработал, а https — нет, переходим к следующему этапу.
Как мы уже выяснили, компоненты 1С могут использовать системные библиотеки Windows. Иногда настройки прокси прописаны в "Свойствах браузера" (WinInet), но системные службы (WinHTTP) о них не знают. Для корректной работы HTTPS в 1С рекомендуется выполнить принудительный импорт настроек.
Рассмотрим порядок действий:
netsh winhttp import proxy source=ie
Это позволит платформе использовать те же параметры соединения, которые использует ваш основной браузер, что часто решает проблему "невидимости" прокси для HTTPS-трафика.
Одной из самых частых причин блокировки HTTPS является так называемая SSL Inspection (проверка зашифрованного трафика) на стороне корпоративного прокси. В этом случае прокси-сервер "подменяет" сертификат целевого сайта на свой собственный. Если 1С не доверяет этому сертификату, соединение будет разорвано без объяснения причин.
Разберем, как добавить сертификат в список доверенных для 1С:
.cer или .pem.cacert.pem в каталоге установленной платформы 1С (путь вида C:\Program Files\1cv8\8.3.X.XXXX\bin\conf).Также обязательно убедитесь, что этот сертификат установлен в системное хранилище Windows "Доверенные корневые центры сертификации".
Проанализируем ситуацию со стороны сетевого администратора. Прокси-серверы часто фильтруют трафик по полю User-Agent. Когда 1С обращается к интернет-ресурсу, она представляется как 1CV8C (тонкий клиент) или 1CV8 (сервер). Многие прокси по умолчанию блокируют любые "неизвестные" приложения, разрешая доступ только стандартным браузерам вроде Chrome или Firefox.
Что нужно попросить сделать системных администраторов:
1CV8* в список исключений (белый список), для которых разрешен протокол CONNECT (необходим для HTTPS).CONNECT для нестандартных приложений на портах 443.Если ваш прокси-сервер или целевой сайт требуют использования современных протоколов защиты (например, TLS 1.2 или TLS 1.3), а в системе они отключены, HTTPS работать не будет. Поскольку Поле HTML-документа часто использует настройки Internet Explorer, проверим их:
Использовать TLS 1.2.Начиная с версии 8.3.14, 1С позволяет использовать более современный движок для отображения HTML. Если вы используете режим WebKit, он может вести себя иначе, чем старый движок. В некоторых случаях помогает явное указание параметров запуска клиента 1С с ключами командной строки:
1cv8c.exe /Proxy -http -proxy=адрес_прокси:порт
Или, если используется тонкий клиент через веб-сервер, проверьте настройки публикации на самом веб-сервере (IIS или Apache), так как они тоже могут влиять на прохождение HTTPS-запросов.
Проблема с HTTPS в 1С через прокси почти всегда носит комплексный характер. Мы рассмотрели основные уровни диагностики: от простых настроек inetcfg.xml до сложных манипуляций с сертификатами и фильтрами User-Agent на сетевом оборудовании. Помните, что отсутствие запросов в логах прокси для HTTPS часто означает, что приложение "споткнулось" на этапе установления защищенного соединения (Handshake) еще до того, как был отправлен основной запрос. Проверка SSL-сертификатов и разрешений для 1CV8 на стороне прокси является ключом к решению в 90% случаев.