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

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

Как проверить публикацию 1С на веб-сервере

Как проверить публикацию базы 1С на веб-сервере: проверка default.vrd, доступа через браузер, тонкого клиента, типичные ошибки и способы их устранения.

Публикация информационной базы 1С на веб-сервере позволяет работать с ней через браузер и тонкий клиент без установки полной платформы. Но сам факт нажатия кнопки «Опубликовать» в конфигураторе не гарантирует, что база действительно доступна: ошибки в правах, настройках IIS или Apache и в файле default.vrd проявляются только при обращении к публикации.

Проверка публикации сводится к нескольким независимым уровням: работает ли сам веб-сервер, корректен ли файл публикации, открывается ли база в браузере и в тонком клиенте, нет ли ошибок в журналах. Ниже разобраны все этапы проверки с признаками нормы и типичными сбоями.

Что такое публикация и где её искать

Публикация — это набор файлов в каталоге веб-сервера, главный из которых — default.vrd. В нём описано, какое расширение веб-сервера обрабатывает запросы (wsisapi.dll для IIS или mod_1c для Apache), где находится база и какие сервисы включены. Без корректного default.vrd публикация фактически не существует, даже если каталог создан.

При публикации из конфигуратора (Администрирование → Публикация на веб-сервере) платформа сама создаёт каталог и файл. Путь к каталогу виден в том же диалоге публикации. Если публикацию настраивал другой администратор, ищите каталог в стандартных местах: для IIS это обычно подкаталог в C:\inetpub\wwwroot, для Apache — внутри DocumentRoot, указанного в httpd.conf.

Проверка файла default.vrd

Откройте default.vrd в любом текстовом редакторе и сверьте ключевые атрибуты. В элементе point для базы параметр name должен совпадать с именем публикации в адресе, а ib — содержать корректную строку соединения: для серверной базы это что-то вроде Srvr="Server1";Ref="BaseName";, для файловой — File="C:\путь\к\базе";.

Типичная ошибка — устаревшая строка соединения: базу перенесли на другой сервер или переименовали, а default.vrd остался прежним. В этом случае веб-сервер работает, каталог открывается, но при входе возникает ошибка соединения с информационной базой. После правки файла перезапустите веб-сервер (для IIS — командой iisreset, для Apache — перезапуском службы), чтобы изменения гарантированно применились.

Также проверьте, что в файле не отключены нужные сервисы: если через публикацию должны работать HTTP-сервисы или веб-сервисы, соответствующие атрибуты enable должны иметь значение true.

Проверка доступа через браузер

Самый наглядный тест — открыть адрес публикации в браузере: http://имя_сервера/ИмяПубликации. В норме появляется окно аутентификации 1С или сразу интерфейс базы, если настроена автоматическая аутентификация. Это подтверждает, что веб-сервер принимает запрос, расширение 1С загружено и соединение с базой установлено.

Если вместо входа отображается ошибка 404 — веб-сервер не находит публикацию: проверьте имя каталога, регистр букв (Apache чувствителен к регистру) и наличие default.vrd. Ошибка 500 указывает на сбой расширения веб-сервера: чаще всего не загружается модуль 1С из-за несовпадения разрядности (32-битный модуль на 64-битном пуле приложений IIS) или отсутствия прав на каталог платформы.

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

Контрольные точки

Как проверить результат

Открытие адреса публикации в браузере
Норма

Появляется окно входа или рабочий стол базы

Тревожный признак

Ошибки 403, 404, 500 или пустая страница

Содержимое default.vrd
Норма

Строка соединения указывает на актуальное расположение базы

Тревожный признак

Устаревший сервер, имя базы или путь к файловой базе

Вход в тонком клиенте по адресу публикации
Норма

База открывается, работают документы и отчёты

Тревожный признак

Ошибка соединения или зависание на этапе загрузки

Журналы веб-сервера
Норма

Нет повторяющихся ошибок при обращении

Тревожный признак

Записи об отказе в доступе или сбое модуля 1С

Проверка через тонкий клиент

Браузерная проверка не покрывает все сценарии: тонкий клиент использует тот же канал, но иначе обрабатывает данные. Запустите тонкий клиент, добавьте базу с типом расположения «На веб-сервере» и укажите тот же адрес публикации. При успешном входе откройте несколько документов, проведите тестовый документ и сформируйте отчёт — это подтвердит, что работают не только интерфейс, но и прикладная логика.

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

Порядок полной проверки публикации
  1. 1
    Найдите каталог публикации и убедитесь, что в нём есть default.vrd
  2. 2
    Сверьте строку соединения в default.vrd с фактическим расположением базы
  3. 3
    Проверьте права учётной записи веб-сервера на каталог публикации и базы
  4. 4
    Откройте адрес публикации в браузере и выполните вход
  5. 5
    Добавьте базу в тонкий клиент по адресу публикации и проверьте работу
  6. 6
    Просмотрите журналы веб-сервера и журнал регистрации 1С на предмет ошибок

Диагностика по журналам

Журналы веб-сервера — основной источник информации при неочевидных сбоях. Для IIS логи лежат в C:\inetpub\logs\LogFiles, для Apache — в каталоге, указанном директивами ErrorLog и CustomLog в httpd.conf. Ищите строки с кодами ошибок в момент обращения к публикации.

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

Типичные ошибки при проверке публикации
01
Проверка только из браузера на самом сервере — сетевые проблемы и настройки брандмауэра при этом не видны, тестируйте с рабочей станции
02
Игнорирование регистра букв в адресе при публикации на Apache — /Base и /base для него разные пути
03
Правка default.vrd без перезапуска веб-сервера — изменения могут не примениться, и проверка покажет старое поведение
04
Проверка под администратором вместо обычного пользователя — проблемы с правами ролей 1С остаются незамеченными
05
Отсутствие проверки лицензий — база открывается, но у пользователей возникает ошибка нехватки лицензий при одновременной работе

Частые проблемы и их устранение

Несовпадение разрядности — лидер среди причин ошибки 500 на IIS. Пул приложений должен соответствовать разрядности wsisapi.dll: для 64-битной платформы в настройках пула параметр «Разрешить 32-разрядные приложения» должен быть отключён, для 32-битной — включён. После смены настройки перезапустите пул.

Вторая группа проблем — права доступа. Учётной записи веб-сервера нужны права на каталог публикации, каталог временных файлов и каталог файловой базы. Для серверной базы дополнительно проверьте доступность сервера 1С по сети с машины веб-сервера: брандмауэр может блокировать порт агента кластера.

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

Выбор способа проверки под ситуацию

Маршрут решения

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

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

Для быстрой разовой проверки достаточно браузера. Для приёмки публикации в эксплуатацию обязательна проверка тонким клиентом с учётной записью рядового пользователя и анализ журналов — только так выявляются скрытые проблемы с правами и лицензиями.

Итог

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

Рабочая публикация определяется тремя признаками: корректный default.vrd с актуальной строкой соединения, успешный вход через браузер и стабильная работа тонкого клиента под обычным пользователем. При сбоях первичны журналы веб-сервера и журнал регистрации 1С, а большинство проблем связано с правами доступа, разрядностью модуля и устаревшей строкой соединения.

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

Как узнать адрес публикации, если её настраивал другой администратор?

Адрес складывается из имени сервера и имени каталога публикации. Просмотрите сайты и виртуальные каталоги в консоли IIS или директивы Alias и каталоги в конфигурации Apache — имена каталогов с файлом default.vrd внутри и есть имена публикаций.

База открывается в браузере, но просит пароль Windows. Это нормально?

Это признак того, что на веб-сервере включена аутентификация Windows вместо или вместе с аутентификацией 1С. Проверьте настройки аутентификации сайта или каталога публикации: обычно для веб-клиента включают анонимную аутентификацию, а вход выполняется средствами 1С.

Нужно ли перезапускать веб-сервер после изменения default.vrd?

Файл перечитывается при обращении, но на практике кэширование модулей иногда приводит к тому, что изменения применяются не сразу. Надёжнее после правки выполнить iisreset для IIS или перезапустить службу Apache.

Как проверить публикацию HTTP-сервиса, а не всей базы?

Обратитесь в браузере или через curl к адресу вида http://сервер/ИмяПубликации/hs/ИмяСервиса/шаблонURL. При этом в default.vrd для HTTP-сервисов должно быть задано enable="true", а права на выполнение сервиса — назначены пользователю, под которым выполняется запрос.

Что делать, если публикация работает локально, но недоступна с других компьютеров?

Проверьте брандмауэр на сервере: должен быть открыт порт веб-сервера (обычно 80 или 443). Также убедитесь, что сайт привязан не только к localhost, а имя сервера разрешается в DNS или прописано в файле hosts на клиентских машинах.