Часто при разработке интеграций и API в 1С возникает необходимость отладить входящие HTTP или HTTPS запросы. Если база работает в файловом варианте, настроить перехват достаточно просто. Однако, если база клиент-серверная, а в качестве веб-сервера используется IIS (Internet Information Services), процесс настройки требует более глубокого понимания взаимодействия служб. Разберем по шагам, как правильно подготовить систему, чтобы отладчик Конфигуратора начал успешно перехватывать сеансы при входящих веб-запросах.
В первую очередь выясним причину, по которой отладчик может не видеть фоновые задания и веб-сеансы. По умолчанию служба Агента сервера 1С (ragent) запускается без поддержки отладки HTTP-соединений. Нам необходимо изменить параметры ее запуска через системный реестр Windows.
Проанализируем строку запуска службы. Чтобы включить отладку, необходимо добавить флаги -debug и -http. Зайдите в редактор реестра (regedit), найдите ветку службы 1С и измените параметр ImagePath. Итоговая строка должна выглядеть примерно так (пути могут отличаться в зависимости от версии платформы):
"C:\Program Files\1cv8\8.3.13.1513\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug -http
После внесения изменений обязательно полностью перезапустите службу «Агент сервера 1С:Предприятия».
Рассмотрим ситуацию с портами. В локальных (файловых) базах используется локальный сервер отладки. Но для клиент-серверной базы нам нужен центральный кластер. Важно понимать, что если IIS "слушает" стандартные веб-порты (80 для HTTP или 443 для HTTPS), мы не должны направлять отладку на них, иначе IIS просто не поймет этот трафик и вернет ошибку 404. Нам нужно указать свободный порт для отладчика, например 1550 или 1551.
Теперь посмотрим на настройки самого веб-сервера IIS. Главное упущение многих разработчиков — забыть включить отладку на стороне веб-сервера. Зайдите в каталог виртуального приложения, где опубликована ваша база. Там находится конфигурационный файл default.vrd. Откройте его в текстовом редакторе и убедитесь, что в нем присутствует тег debug с включенным параметром enable="true".
Строка настройки должна выглядеть следующим образом:
Обратите внимание, что URL и порт должны совпадать с теми, что вы выбрали для сервера отладки (в нашем примере это порт 1551). После сохранения изменений в файле default.vrd обязательно перезапустите веб-сервер IIS или его пул приложений, чтобы новые правила вступили в силу.
Даже если службы настроены верно, сам Конфигуратор нужно подготовить к приему трафика. Разберем необходимые действия:
1551).Проанализируем ситуацию, если ваш сервер принимает запросы снаружи по защищенному протоколу HTTPS. Зачастую брандмауэры блокируют все порты, кроме 443. В таком случае прямое подключение к порту отладчика 1551 извне не сработает.
Чтобы обойти это ограничение, на стороне IIS можно настроить механизм Reverse Proxy (обратный прокси). Обращения к специальному адресу (например, https://your-server.com/debugger/) будут прозрачно перенаправляться службой IIS на внутренний локальный адрес сервера отладки (http://localhost:1551). Это позволит безопасно отлаживать базу из интернета.
Когда все настройки выполнены, расставьте точки останова в модуле вашего HTTP-сервиса. Важно понимать: отладчик сработает только в момент реального обращения к API. Для генерации и тестирования HTTP/HTTPS запросов (GET, POST, PUT) рекомендуется использовать специализированные инструменты.
Отличными решениями будут бесплатные программы, такие как Fiddler или Postman. Сформируйте корректный запрос к опубликованному URL вашего сервиса, отправьте его — и Конфигуратор автоматически перехватит выполнение кода на вашей точке останова.