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

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

Как опубликовать базу данных 1С на веб-сервере

Подробная инструкция по публикации базы 1С на веб-сервере IIS и Apache: требования, настройка, файл default.vrd, проверка работы и типичные ошибки.

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

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

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

Что нужно подготовить перед публикацией

Для публикации потребуется компьютер с установленной платформой 1С:Предприятие, веб-сервер и модуль расширения веб-сервера. Модуль устанавливается вместе с платформой — при установке нужно отметить компонент «Модули расширения веб-сервера». Если платформа уже установлена без этого компонента, запустите установщик повторно в режиме изменения и добавьте модуль.

Критично совпадение разрядности: 64-разрядный веб-сервер требует 64-разрядного модуля расширения, 32-разрядный — 32-разрядного. Несовпадение разрядности — самая частая причина ошибки «500» или невозможности загрузить модуль. На 64-разрядной Windows с IIS рекомендуется ставить 64-разрядную платформу целиком.

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

Выбор веб-сервера: IIS или Apache

На Windows штатным вариантом считается IIS — он встроен в систему, включается через «Компоненты Windows» и хорошо документирован применительно к 1С. Apache чаще используют на Linux-серверах или когда веб-сервер уже развёрнут на Apache для других задач. Функционально для публикации базы оба варианта равнозначны.

Для IIS перед публикацией убедитесь, что установлены компоненты: службы WWW, расширения ISAPI, CGI, а также средства управления. На Windows Server это делается через мастер добавления ролей, на клиентской Windows — через «Программы и компоненты → Включение компонентов Windows».

Сравнение вариантов

IIS

Штатный выбор для Windows. Простая настройка через графический интерфейс, интеграция с аутентификацией Windows. Ограничение — только платформа Windows.

Apache

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

Публикация через конфигуратор: пошаговый процесс

Основной способ публикации — встроенный диалог конфигуратора. Откройте базу в конфигураторе под пользователем с административными правами и перейдите в меню «Администрирование → Публикация на веб-сервере». Сам конфигуратор при этом должен быть запущен на компьютере с веб-сервером или с доступом к нему.

В диалоге укажите имя публикации — оно станет частью URL, поэтому используйте латинские буквы без пробелов, например trade или buh. Выберите веб-сервер, укажите каталог для размещения файлов публикации и отметьте нужные флажки: публикация тонкого и веб-клиента, веб-сервисов, HTTP-сервисов, стандартного интерфейса OData.

Порядок действий
  1. 1
    Установите платформу 1С с компонентом «Модули расширения веб-сервера» той же разрядности, что и веб-сервер
  2. 2
    Установите и запустите веб-сервер: IIS через компоненты Windows или Apache с нужными модулями
  3. 3
    Откройте базу в конфигураторе и перейдите: Администрирование → Публикация на веб-сервере
  4. 4
    Задайте имя публикации латиницей, выберите веб-сервер и каталог, отметьте нужные виды клиентов и сервисов
  5. 5
    Нажмите «Опубликовать» и дождитесь сообщения об успешной публикации
  6. 6
    Проверьте доступ, открыв в браузере адрес http://имя_сервера/имя_публикации

После нажатия кнопки «Опубликовать» конфигуратор создаёт виртуальный каталог на веб-сервере, регистрирует модуль расширения и записывает файл default.vrd с параметрами соединения с базой. Для IIS публикация выполняется в выбранный веб-сайт, для Apache — вносятся изменения в конфигурационный файл httpd.conf, после чего Apache нужно перезапустить.

Файл default.vrd и ручная настройка

Файл default.vrd — это XML-файл, который описывает параметры публикации: строку подключения к базе, список опубликованных веб-сервисов, настройки пула соединений. Он лежит в каталоге публикации и читается модулем расширения при каждом обращении. Понимание его структуры помогает, когда автоматическая публикация не сработала или нужно тонко настроить параметры.

Ключевой элемент — атрибут ib в теге point, содержащий строку соединения. Для файловой базы это путь вида File="C:\Bases\Trade", для клиент-серверной — Srvr="server1c";Ref="trade". Если база была перемещена или переименована, достаточно исправить строку в default.vrd, не выполняя публикацию заново.

xml
<point name="trade" ib="Srvr=&quot;srv1c&quot;;Ref=&quot;trade&quot;;"/>

Для Apache на Linux публикацию часто выполняют утилитой webinst из состава платформы — она регистрирует модуль и создаёт default.vrd из командной строки. Это удобно для автоматизации развёртывания на нескольких серверах.

Проверка работоспособности публикации

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

Проверьте также работу опубликованных сервисов, если они использовались: веб-сервисы доступны по адресу http://сервер/имя/ws/ИмяСервиса?wsdl, интерфейс OData — по адресу http://сервер/имя/odata/standard.odata. Ответ с XML-описанием подтверждает, что публикация сервисов работает.

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

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

Открытие http://сервер/имя_публикации в браузере
Норма

Загружается страница входа веб-клиента 1С

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

Ошибка 404 (публикация не создана) или 500 (проблема с модулем расширения)

Вход под реальным пользователем
Норма

После ввода логина и пароля открывается интерфейс прикладного решения

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

Ошибка аутентификации или «информационная база не обнаружена»

Скорость отклика при работе
Норма

Формы открываются без многократных длительных ожиданий

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

Постоянные таймауты — проверьте настройки пула соединений и сеть до сервера 1С

Типичные ошибки и их устранение

Ошибка HTTP 500 при обращении к публикации почти всегда означает проблему с модулем расширения: несовпадение разрядности, модуль не зарегистрирован или веб-сервер не имеет доступа к его файлам. Проверьте разрядность платформы и пула приложений IIS — в 64-разрядном IIS пул не должен работать в режиме 32-разрядных приложений, если модуль 64-разрядный.

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

Типичные ошибки
01
Публикация из конфигуратора, запущенного без прав администратора — виртуальный каталог не создаётся, а ошибка не всегда очевидна. Запускайте конфигуратор от имени администратора
02
Несовпадение разрядности модуля расширения и веб-сервера — ошибка 500 при любом обращении. Ставьте модуль той же разрядности, что и веб-сервер
03
Использование кириллицы и пробелов в имени публикации — проблемы с URL и подключением клиентов. Используйте только латиницу
04
Открытие публикации в интернет без HTTPS и аутентификации — риск перехвата учётных данных и доступа к базе посторонних
05
Забытый перезапуск Apache после публикации — изменения в httpd.conf не применяются, публикация недоступна

Безопасность и ограничения доступа

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

Дополнительно можно настроить аутентификацию средствами веб-сервера, ограничение доступа по IP-адресам в IIS или Apache, а также использовать отдельный сервер или порт для внешних подключений. Не публикуйте HTTP-сервисы и OData без необходимости — каждый опубликованный интерфейс расширяет поверхность возможных атак.

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

Можно ли опубликовать файловую базу 1С на веб-сервере?

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

Чем публикация через веб-сервер отличается от работы через RDP?

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

Почему после публикации браузер показывает ошибку 404?

Ошибка 404 означает, что веб-сервер не находит виртуальный каталог публикации. Проверьте, что публикация выполнена в тот веб-сайт IIS, который вы открываете, что имя в URL совпадает с именем публикации с учётом регистра (для Apache на Linux регистр важен), а для Apache — что служба перезапущена после изменения конфигурации.

Нужно ли заново публиковать базу после обновления платформы?

Как правило, да. Модуль расширения веб-сервера привязан к версии платформы, поэтому после обновления платформы публикацию нужно выполнить повторно или перерегистрировать модуль утилитой webinst, иначе возможны ошибки загрузки модуля старой версии.

Можно ли опубликовать несколько баз на одном веб-сервере?

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

Как ограничить доступ к опубликованной базе только из офиса?

Настройте ограничение по IP-адресам средствами веб-сервера: в IIS это модуль «Ограничения по IP-адресу и домену», в Apache — директивы Require ip в конфигурации виртуального каталога. Укажите подсеть офиса, и обращения с других адресов будут отклоняться ещё до обращения к 1С.

Итог

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

Публикация выполняется из конфигуратора и требует веб-сервера с модулем расширения 1С совпадающей разрядности. Проверяйте результат по адресу http://сервер/имя_публикации, а при ошибках 500 и 404 в первую очередь смотрите разрядность модуля, права доступа и строку соединения в default.vrd. Внешний доступ открывайте только через HTTPS с ограничением круга пользователей.