Публикация базы 1С:Предприятие 8.3 на веб-сервере IIS: от кластера до первого входа

· 9 мин

Содержание

Чтобы опубликовать базу 1С на сервере, нужны три вещи: веб-сервер IIS с модулем ISAPI, установленный компонент платформы «Модули расширения веб-сервера» и Конфигуратор, запущенный от имени администратора. Публикация делается в Администрирование → Публикация на веб-сервере: задаёте имя, каталог и жмёте «Опубликовать». После этого база открывается по адресу http://сервер/имя в браузере, тонком клиенте или мобильном приложении.

Ниже — порядок для Windows Server и клиент-серверной базы. Отличия для файловой базы и Apache отмечены там, где они есть.

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

Публикация ломается чаще всего не в Конфигураторе, а на этапе подготовки. Проверьте четыре пункта.

1. Роль веб-сервера IIS. В Диспетчер серверов → Управление → Добавить роли и компоненты включите роль «Веб-сервер (IIS)». В разделе «Разработка приложений» отметьте:

  • ✅ Расширения ISAPI;
  • ✅ Фильтры ISAPI;
  • ✅ Средства управления → Консоль управления IIS.

На Windows 10/11 то же самое включается в Панель управления → Программы → Включение или отключение компонентов Windows → Службы IIS.

2. Модули расширения веб-сервера. Запустите установщик платформы той же версии, что стоит на сервере 1С, выберите «Изменить» и отметьте компонент «Модули расширения веб-сервера». Без него в списке веб-серверов Конфигуратора будет пусто или публикация завершится ошибкой.

3. Разрядность. IIS по умолчанию работает в 64-битном режиме. Если на веб-сервере стоит 32-битная платформа, пул приложений придётся переключить (об этом ниже). Проще сразу ставить 64-битную платформу.

4. Сеть. Веб-сервер должен видеть сервер 1С. Стандартные порты:

ЧтоПорт по умолчанию
Агент сервера (ragent)1540
Менеджер кластера (rmngr)1541
Рабочие процессы (rphost)диапазон 1560–1591
Веб-сервер для пользователей80 (HTTP) или 443 (HTTPS)

Если веб-сервер и сервер 1С — одна машина, сетевой вопрос отпадает. Для небольшой компании на 10–20 пользователей это нормальная схема.

Шаг 1. Регистрируем информационную базу в кластере серверов

Для клиент-серверного варианта база должна существовать в кластере. Если она уже работает у пользователей через тонкий клиент — шаг пропускайте.

Новую базу регистрируют в консоли «Администрирование серверов 1С Предприятия»:

  1. Раскройте Central 1C:Enterprise 8.3 servers → имя сервера → Кластеры → Local cluster → Информационные базы.
  2. Правой кнопкой по «Информационные базы» → Создать → Информационная база.
  3. Заполните поля:
    • Имя — короткое, латиницей, без пробелов, например buh. Это имя пойдёт в строку подключения Ref=.
    • Сервер баз данных — имя или адрес сервера СУБД.
    • Тип СУБД — MS SQL Server или PostgreSQL.
    • База данных — имя базы в СУБД.
    • Пользователь и пароль сервера БД.
    • Разрешить выдачу лицензий сервером 1С:Предприятия — «Да», если лицензии лежат на сервере.
    • Для новой пустой базы — флажок «Создать базу данных в случае ее отсутствия».
  4. Нажмите «ОК».

Тот же результат даёт окно запуска 1С: Добавить → Создание новой информационной базы → На сервере 1С:Предприятия. Это удобнее, если консоль администрирования не установлена.

Для файловой базы регистрация в кластере не нужна. Публикация в этом случае указывает прямо на каталог с файлом 1Cv8.1CD, а строка подключения выглядит как File="D:\Bases\buh";.

Шаг 2. Публикуем базу через Конфигуратор

Публиковать нужно из Конфигуратора, запущенного от имени администратора Windows. Без повышенных прав Конфигуратор не сможет создать виртуальный каталог в IIS и выдаст ошибку доступа.

  1. Правой кнопкой по ярлыку 1С → «Запуск от имени администратора».
  2. Откройте базу в режиме Конфигуратора. Подключайтесь к ней тем способом, каким будут работать пользователи (через сервер, а не к копии).
  3. Меню Администрирование → Публикация на веб-сервере.
  4. Заполните окно:
ПолеЧто указать
ИмяЧасть адреса: buh → http://сервер/buh
Веб-серверInternet Information Services
КаталогПо умолчанию C:\inetpub\wwwroot\buh, менять обычно не нужно
Публиковать тонкий клиент и веб-клиентВключить
Публиковать стандартный интерфейс ODataТолько если нужна интеграция
Вкладки Web-сервисы и HTTP-сервисыОтметить нужные сервисы конфигурации
  1. Нажмите «Опубликовать». Конфигуратор спросит про перезапуск веб-сервера — согласитесь.

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

В каталоге публикации появится файл default.vrd. Это описание публикации: адрес, строка подключения, список сервисов. Для клиент-серверной базы он выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       base="/buh"
       ib="Srvr=&quot;srv1c&quot;;Ref=&quot;buh&quot;;">
</point>

Публикация без Конфигуратора: утилита webinst

Если баз много или нужна автоматизация, используйте webinst.exe из каталога bin платформы. Командную строку тоже запускайте от администратора:

cd "C:\Program Files\1cv8\8.3.xx.xxxx\bin"
webinst.exe -publish -iis -wsdir buh -dir "C:\inetpub\wwwroot\buh" -connstr "Srvr=srv1c;Ref=buh;"

Вместо 8.3.xx.xxxx подставьте номер вашей версии платформы. Удалить публикацию можно ключом -delete с теми же -wsdir и -dir. Полный список ключей выводит webinst.exe без параметров.

Шаг 3. Проверяем виртуальный каталог и пул приложений в IIS

Конфигуратор делает основную работу сам, но после публикации стоит заглянуть в «Диспетчер служб IIS» (inetmgr).

Виртуальный каталог

В дереве Сайты → Default Web Site должно появиться приложение buh. Откройте у него «Сопоставления обработчиков»: там должен быть обработчик для пути *, который ведёт на wsisapi.dll в каталоге bin вашей версии платформы.

Если в пути к wsisapi.dll указана другая версия платформы, чем установлена сейчас, — это главный признак проблемы после обновления 1С (см. раздел про ошибки).

Ограничения ISAPI и CGI

На уровне сервера в IIS откройте «Ограничения ISAPI и CGI». Библиотека wsisapi.dll должна быть в списке с отметкой «Разрешено». Если её нет или стоит запрет — IIS ответит ошибкой 404.2.

Пул приложений

Откройте Пулы приложений → DefaultAppPool (или отдельный пул, если вы его создали) → «Дополнительные параметры»:

  • 🔹 Разрешены 32-разрядные приложения — True только при 32-битной платформе на веб-сервере. Для 64-битной — False.
  • 🔹 Режим управляемого конвейера — «Встроенный» подходит.
  • 🔹 Удостоверение — учётная запись, от имени которой IIS обращается к файлам платформы и базы.

Под каждую крупную базу удобно завести отдельный пул. Тогда зависание одной публикации не тянет за собой остальные, а перезапуск пула не затрагивает соседей.

Права доступа и безопасность опубликованной базы

Права на файлы

Учётной записи пула (по умолчанию группа IIS_IUSRS) нужны:

КаталогПрава
C:\Program Files\1cv8\8.3.xx.xxxx\binЧтение и выполнение
Каталог публикации C:\inetpub\wwwroot\buhЧтение
Каталог файловой базы (только для файлового варианта)Изменение

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

Аутентификация

По умолчанию в IIS включена анонимная проверка подлинности, а пароль спрашивает уже сама 1С. Это рабочая схема при условии, что:

  • 🔐 у всех пользователей 1С заданы пароли;
  • 🔐 пользователь без пароля и с полными правами удалён или ему запрещён вход;
  • 🔐 база не торчит в интернет по голому HTTP.

Если нужен вход по учётной записи Windows, включите в IIS «Проверку подлинности Windows» и разрешите аутентификацию ОС у пользователей 1С.

Публикация наружу

Не открывайте базу в интернет по HTTP: логин и пароль 1С уйдут открытым текстом. Минимальный набор:

  1. Сертификат (Let’s Encrypt или коммерческий) и привязка HTTPS на порт 443 в IIS: Default Web Site → Привязки.
  2. Перенаправление с 80 на 443 или закрытый 80-й порт на межсетевом экране.
  3. Наружу пробрасывается только 443. Порты кластера 1540, 1541 и 1560–1591 в интернет не открывать.
  4. По возможности — доступ через VPN или ограничение по IP-адресам офисов.

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

Как пользователям подключиться к опубликованной базе

Есть три способа, и все работают с одной публикацией.

СпособЧто сделатьКогда удобно
Веб-клиентОткрыть http://сервер/buh в браузереНет платформы на компьютере, редкая работа
Тонкий клиентВ окне запуска: Добавить → Добавление в список существующей информационной базы → На веб-сервере, адрес http://сервер/buhЕжедневная работа, удалённые сотрудники
Мобильный клиентДобавить базу по тому же адресуРабота с телефона или планшета

В списке баз строка подключения для такого варианта выглядит как ws="http://сервер/buh";.

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

Диагностика: выберите симптом

Ошибки при публикации базы 1С на веб-сервере и как их искать

Большинство сбоев раскладывается по таблице выше. Если симптом другой, идите сверху вниз по цепочке: браузер → IIS → модуль 1С → кластер → СУБД.

Где смотреть подробности:

  • 📄 Журналы IIS — C:\inetpub\logs\LogFiles. Код ответа и подкод (например, 500 0 или 404 2) сразу показывают, на чьей стороне сбой.
  • 📄 Журнал событий Windows → «Приложение». Там видны падения рабочего процесса w3wp.exe.
  • 📄 Детальные ошибки IIS. Откройте адрес публикации прямо на сервере: локально IIS показывает подробный текст ошибки, а удалённо — краткий.

Как разделить проблему пополам. Если тонкий клиент на том же сервере подключается к базе напрямую (Srvr=...;Ref=...;), а через веб — нет, значит, кластер и СУБД в порядке, ищите в IIS и правах. Если не подключается и напрямую — дело в кластере, лицензиях или СУБД.

Перезапуск пула приложений, службы IIS (iisreset) или агента сервера 1С обрывает сеансы всех пользователей, работающих через эту публикацию или кластер. Предупредите людей и делайте это вне рабочего времени, если ошибка не блокирует работу полностью.

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

Можно ли опубликовать файловую базу, а не серверную?
Да. Публикация делается так же, только в строке подключения будет путь к каталогу базы, а учётной записи пула нужны права на изменение этого каталога. Для 3–5 одновременных пользователей такой схемы хватает.
Нужна ли отдельная лицензия на веб-сервер?
Отдельной лицензии на модуль расширения веб-сервера нет. Лицензии расходуют сеансы пользователей — так же, как при обычном подключении тонким клиентом.
Можно ли использовать Apache вместо IIS?
Да. В окне публикации выберите нужную версию Apache, а в webinst — соответствующий ключ и путь к httpd.conf. На Linux Apache — основной вариант публикации.
Как убрать публикацию?
В том же окне Администрирование → Публикация на веб-сервере нажмите «Отключить». Каталог публикации и приложение в IIS будут удалены, сама база не пострадает.
Можно ли опубликовать одну базу под двумя адресами?
Да, это две независимые публикации с разными именами. Так делают, например, когда для обмена через HTTP-сервисы нужна отдельная точка с другими настройками доступа.