К статье
Практический материал

Администрирование · 12 мин

Ошибка HTTP при обращении к серверу 1С: что это и как исправить

Разбираем, что означает ошибка HTTP при обращении к серверу 1С, почему она возникает и как её исправить: настройки веб-сервера, публикация, права доступа, сертификаты.

Ошибка HTTP при обращении к серверу 1С — это сообщение о сбое на транспортном уровне: клиент (тонкий клиент, веб-клиент, мобильное приложение или другая информационная база) не смог корректно обменяться данными с сервером по протоколу HTTP/HTTPS. Сама 1С здесь часто ни при чём: проблема обычно находится в веб-сервере (IIS или Apache), сетевых настройках, сертификатах или правах доступа.

Типичные варианты сообщения: «Ошибка HTTP при обращении к серверу: 404», «500 Internal Server Error», «Ошибка соединения с сервером», «Удалённый сервер возвратил ошибку (403)». Код в сообщении — главный ключ к диагностике: он указывает, на каком этапе произошёл сбой и кто его инициировал.

Такая ошибка возникает при публикации информационной базы на веб-сервере, при обмене данными через HTTP-сервисы, при работе веб-клиента и при вызове внешних API из кода 1С. Дальше разберём, как по коду ошибки определить причину и что делать в каждом случае.

Что означает ошибка HTTP в контексте 1С

Когда база 1С опубликована на веб-сервере, между клиентом и сервером 1С стоит посредник — IIS или Apache. Клиент отправляет HTTP-запрос, веб-сервер передаёт его расширению 1С (wsisapi.dll или mod_1c), то обращается к серверу 1С или файловой базе, и ответ идёт обратно по цепочке. Сбой на любом звене выдаёт ошибку HTTP.

Важно понимать: текст «Ошибка HTTP при обращении к серверу» — это не диагноз, а симптом. Реальная причина зашита в числовом коде и в дополнительном тексте, который 1С выводит ниже основного сообщения. Именно этот текст нужно читать в первую очередь.

Как расшифровать код ошибки

Коды HTTP стандартизированы, поэтому по номеру можно сразу сузить круг поиска. Ниже — самые частые коды при работе с 1С.

КодЧто означаетТипичная причина в 1С
400Некорректный запросОшибка в составе запроса HTTP-сервиса, неверные параметры
401Требуется аутентификацияНеверный логин/пароль, отключена нужная схема аутентификации на веб-сервере
403Доступ запрещёнНет прав у пользователя ОС на каталог базы, ограничения IIS
404Не найденоНеверный URL публикации, публикация удалена, опечатка в имени базы
500Внутренняя ошибка сервераСбой расширения 1С, недоступен сервер 1С, ошибка в коде HTTP-сервиса
502/503Шлюз недоступен / сервис недоступенВеб-сервер не может достучаться до сервера 1С, пул приложений остановлен

Если в сообщении нет кода, а есть формулировки вроде «Не удаётся установить соединение» или «Превышено время ожидания» — проблема на сетевом уровне: недоступный хост, закрытый порт, файрвол или разрыв по таймауту.

Код 404Запрос дошёл до веб-сервера, но публикация не найдена

Проверьте URL и наличие виртуального каталога в IIS/Apache

Код 500Веб-сервер нашёл публикацию, но обработка упала

Смотрите логи веб-сервера и доступность сервера 1С

Таймаут без кодаЗапрос вообще не дошёл или ответ не вернулся

Проверяйте сеть, файрвол, порт 80/443

Ошибка сертификатаПроблема с SSL при HTTPS-подключении

Проверьте срок действия и цепочку доверия сертификата

Проверка публикации базы на веб-сервере

Самая частая причина кодов 404 и 500 — некорректная или устаревшая публикация. Публикация «ломается» после обновления платформы 1С: расширение веб-сервера привязано к конкретной версии платформы, и после установки новой версии старая публикация перестаёт работать.

Откройте конфигуратор от имени администратора, перейдите в «Администрирование → Публикация на веб-сервере» и проверьте: имя публикации (оно входит в URL), каталог публикации, отмечены ли нужные флажки (тонкий клиент, веб-клиент, HTTP-сервисы, Web-сервисы). После проверки выполните публикацию заново.

Для IIS дополнительно убедитесь, что пул приложений запущен и настроен на нужную разрядность. Если платформа 1С 64-разрядная, а пул принудительно работает в 32-битном режиме (Enable 32-Bit Applications = True), расширение не загрузится и вы получите ошибку 500 или 503.

Порядок действий при ошибке публикации
  1. 1
    Скопируйте полный текст ошибки с кодом из сообщения 1С
  2. 2
    Проверьте URL в браузере: открывается ли страница публикации
  3. 3
    Откройте конфигуратор и выполните публикацию базы заново
  4. 4
    Перезапустите веб-сервер (iisreset для IIS или перезапуск службы Apache)
  5. 5
    Проверьте пул приложений IIS: запущен, правильная разрядность
  6. 6
    Откройте базу через веб-клиент или тонкий клиент и убедитесь, что ошибка ушла

Права доступа и аутентификация

Коды 401 и 403 указывают на проблемы с правами. При 401 веб-сервер не смог идентифицировать пользователя: либо неверные логин/пароль, либо на веб-сервере отключена схема аутентификации, которую использует клиент. В IIS для публикации 1С обычно включена анонимная аутентификация, а проверку пользователя выполняет сама 1С — если анонимный доступ отключён, клиент получит 401 ещё до входа в базу.

Код 403 часто означает, что у учётной записи, под которой работает веб-сервер (например, IUSR или учётная запись пула приложений), нет прав на файловые ресурсы: каталог публикации, каталог файловой базы. Для файловой базы этой учётной записи нужны права на чтение и изменение каталога базы.

Отдельный случай — ошибка при обращении из одной базы 1С к HTTP-сервису другой базы. Здесь 401 означает неверные учётные данные, указанные в настройках подключения или в коде (объект HTTPСоединение, параметры пользователя и пароля).

Проблемы с HTTPS и сертификатами

Если база или внешний сервис работают по HTTPS, клиент проверяет SSL-сертификат сервера. Ошибки вида «Ошибка при проверке сертификата», «Удалённый сертификат недействителен» возникают, когда сертификат просрочен, выпущен на другое имя хоста или издан центром сертификации, которому клиент не доверяет.

Частая ситуация — самоподписанный сертификат или сертификат внутреннего корпоративного УЦ. На сервере он работает, а на клиентских машинах — нет, потому что корневой сертификат УЦ не установлен в доверенные корневые центры сертификации на каждом клиенте. Решение — распространить корневой сертификат на все рабочие места (вручную или через групповые политики).

Проверить сертификат можно прямо в браузере: откройте URL публикации по HTTPS и посмотрите, есть ли предупреждение о безопасности. Если браузер ругается — клиент 1С будет ругаться теми же словами.

Ошибка 500 и сбои на стороне сервера 1С

Код 500 означает, что веб-сервер получил запрос, но обработчик завершился с ошибкой. Варианты: расширение 1С не смогло подключиться к серверу 1С (неверное имя сервера в файле default.vrd, сервер 1С остановлен, сетевой сбой между веб-сервером и сервером приложений); произошла ошибка в коде HTTP-сервиса; не хватает памяти или ресурсов.

Первым делом проверьте файл default.vrd в каталоге публикации: в нём указано, к какому серверу и какой базе подключается публикация. Если сервер 1С переехал на другой хост или изменилось имя базы — публикация будет выдавать 500 до тех пор, пока файл не обновят (проще всего — перепубликацией из конфигуратора).

Если ошибка возникает только при вызове конкретного HTTP-сервиса, смотрите журнал регистрации базы: туда пишутся исключения из кода сервиса. Типичные причины — необработанное исключение в модуле сервиса, ошибка запроса к данным, обращение к несуществующему объекту.

Логи веб-сервера — самый недооценённый источник информации. Для IIS это файлы в C:\inetpub\logs\LogFiles, для Apache — access.log и error.log. По ним видно, дошёл ли запрос до веб-сервера вообще, какой код вернулся и сколько времени заняла обработка. Если запроса нет в логе — проблема до веб-сервера: сеть, DNS, файрвол.
ПЗ
Практическое замечание

Сетевые причины: файрвол, DNS, таймауты

Если ошибка не содержит HTTP-кода, ищите проблему в сети. Проверьте, разрешается ли имя сервера в IP-адрес (команда ping или nslookup с клиентской машины), доступен ли порт (80 для HTTP, 443 для HTTPS) — для этого подойдёт Test-NetConnection в PowerShell.

Файрвол на сервере должен пропускать входящие подключения на порты веб-сервера. После первой установки IIS правило обычно создаётся автоматически, но при смене порта или при работе через сторонний антивирус с сетевым экраном порт может оказаться закрыт.

Таймауты возникают при длительных операциях: например, HTTP-сервис выполняет тяжёлый запрос, а веб-сервер или прокси обрывает соединение раньше, чем приходит ответ. В этом случае либо оптимизируют саму операцию, либо увеличивают таймауты в настройках веб-сервера — но второе лишь маскирует проблему производительности.

powershell
Test-NetConnection -ComputerName server.domain.local -Port 443
Маршрут решения

Как выбрать действие

Ошибка появилась сразу после обновления платформыВыполните публикацию базы заново из конфигуратора новой версии
Ошибка у всех пользователей одновременноПроверяйте серверную часть: веб-сервер, пул приложений, доступность сервера 1С
Ошибка только у одного пользователяПроверяйте его сеть, DNS, сертификаты и кэш клиента на конкретной машине
Ошибка только при вызове одного HTTP-сервисаСмотрите журнал регистрации и код модуля этого сервиса

Типичные ошибки при диагностике

Первая ошибка — перезапуск всего подряд без чтения текста сообщения. Код ошибки и дополнительный текст уже содержат половину диагноза; игнорируя их, администратор тратит время на случайные действия.

Вторая — проверка только с сервера. На самом сервере публикация часто открывается (localhost работает всегда), а с клиентских машин — нет. Проверять доступность нужно с той машины, где возникает ошибка.

Третья — игнорирование журнала регистрации и логов веб-сервера. Без них диагностика превращается в гадание, особенно при коде 500.

Типичные ошибки
01
Перепубликация без перезапуска веб-сервера — старый модуль остаётся в памяти, ошибка не уходит
02
Отключение проверки сертификата вместо установки корневого сертификата — риск перехвата данных
03
Выдача прав администратора учётной записи пула приложений — угроза безопасности всего сервера
04
Диагностика только с сервера — проблема на клиентских машинах остаётся незамеченной
Итог

Что важно запомнить

Ошибка HTTP при обращении к серверу 1С — это сбой на уровне веб-сервера, сети или сертификатов, а не самой базы. Диагностику начинайте с кода ошибки: 404 — проверяйте публикацию и URL, 401/403 — права и аутентификацию, 500 — связь веб-сервера с сервером 1С и журнал регистрации, ошибки сертификата — цепочку доверия SSL. После обновления платформы публикацию нужно выполнять заново.

Частые вопросы

Ошибка 404, хотя публикация точно есть. Что проверить?

Сверьте URL посимвольно: имя публикации чувствительно к регистру и не должно содержать лишних слэшей. Затем проверьте, существует ли виртуальный каталог в консоли IIS или секция в конфигурации Apache, и не был ли удалён или перемещён физический каталог публикации. Если базу недавно переносили, выполните публикацию заново.

Почему после обновления платформы веб-клиент перестал работать?

Расширение веб-сервера (wsisapi.dll или модуль Apache) привязано к версии платформы. После установки новой версии старая публикация ссылается на старые библиотеки. Решение — открыть конфигуратор новой версии и выполнить публикацию заново, затем перезапустить веб-сервер.

Ошибка сертификата есть в 1С, но в браузере сайт открывается нормально. Почему?

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

Код 500 появляется только при вызове одного HTTP-сервиса. Где искать причину?

Откройте журнал регистрации базы с отбором по времени ошибки — там будет исключение из кода сервиса. Типичные причины: ошибка в запросе к данным, обращение к удалённому объекту, отсутствие прав у пользователя, от имени которого выполняется сервис. Проверьте также, не превышает ли обработка таймаут веб-сервера.

Ошибка соединения возникает только у одного пользователя. С чего начать?

Проверьте с его машины: разрешается ли имя сервера (nslookup), доступен ли порт (Test-NetConnection), нет ли на компьютере антивируса или прокси, перехватывающих трафик. Затем очистите кэш клиента 1С и проверьте, установлены ли нужные корневые сертификаты, если используется HTTPS.

Можно ли временно отключить проверку SSL-сертификата, чтобы быстро восстановить работу?

Технически в коде на встроенном языке можно передать в HTTPСоединение объект с отключённой проверкой, но делать это в продуктивной среде небезопасно: трафик становится уязвим для перехвата. Допустимо только как временная мера в тестовом контуре, пока устраняется проблема с сертификатом.