Работа с 1С через браузер: от установки IIS до первого входа пользователя

· 9 мин

Содержание

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

Типичная история: бухгалтер на удалёнке, ставить платформу на его ноутбук не хочется, а RDP нет. Веб-клиент решает задачу за час, если не споткнуться о права доступа и разрядность пула. Ниже порядок действий для Windows Server 2016 и новее и платформы 8.3.2x, с теми местами, где чаще всего всё ломается.

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

Веб-клиент работает через посредника. Браузер обращается к веб-серверу, тот через модуль расширения 1С (wsisapi.dll для IIS) открывает информационную базу: файловую напрямую или клиент-серверную через кластер 1С.

Роли и компоненты IIS

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

  • 🔧 Разработка приложений → Расширения ISAPI — без него модуль 1С не загрузится;
  • 🔧 Разработка приложений → Фильтры ISAPI;
  • 🔧 Средства управления → Совместимость управления IIS 6 (с вложенной «Совместимостью конфигурации метабазы IIS 6») — её использует мастер публикации Конфигуратора;
  • 🔧 Безопасность → Проверка подлинности Windows — если планируете вход по учётной записи домена.

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

Компонента платформы

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

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

На этот же компьютер нужен Конфигуратор: публикация делается из него. Отдельную клиентскую лицензию на сам веб-сервер покупать не надо, но о лицензиях пользователей — в разделе про ограничения.

2. Публикация базы на веб-сервере из Конфигуратора

Главное правило: Конфигуратор для публикации запускайте от имени администратора. Иначе мастер не сможет записать файлы в C:\inetpub\wwwroot и создать приложение в IIS, а ошибка не всегда говорит об этом прямо.

Пошагово

  1. Щёлкните правой кнопкой по ярлыку 1С → «Запуск от имени администратора».
  2. Откройте базу в режиме Конфигуратор.
  3. Выберите Администрирование → Публикация на веб-сервере.
  4. Заполните поле Имя латиницей без пробелов, например buh. Это часть адреса: http://server/buh/.
  5. В поле Веб-сервер выберите Internet Information Services (или Apache 2.4, если используете его).
  6. Каталог — папка публикации, по умолчанию C:\inetpub\wwwroot\buh.
  7. Оставьте отмеченным флажок публикации тонкого клиента и веб-клиента. Флажки OData, веб-сервисов и HTTP-сервисов включайте только если они нужны: каждая лишняя точка входа — лишняя поверхность для атаки.
  8. Нажмите «Опубликовать» и согласитесь на перезапуск веб-сервера.

После публикации в папке появится файл default.vrd — описание точки подключения. В нём записана строка соединения с базой, а в web.config той же папки — путь к модулю wsisapi.dll нужной версии платформы.

Публикация из командной строки: webinst

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

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

Для файловой базы строка соединения выглядит как File="D:\Bases\Buh"; (в командной строке кавычки внутри экранируют удвоением). Удалить публикацию — тот же вызов с ключом -delete вместо -publish.

Номер версии в пути (8.3.24.1691) подставьте свой: папка называется по номеру установленной платформы.

Apache вместо IIS

С Apache 2.4 мастер публикации дописывает в httpd.conf строку загрузки модуля wsap24.dll и блок <Location /buh>. Разрядность Apache и платформы тоже должна совпадать. После публикации перезапустите службу Apache — без этого изменения конфигурации не подхватятся.

3. Права на папки и вход пользователей в веб-клиент

Большая часть ошибок «не открывается в браузере» — это права. Веб-сервер работает не от вашей учётной записи, а от учётной записи пула приложений.

Кому и какие права выдать

ЧтоКомуПрава
Папка файловой базы (где лежит 1Cv8.1CD)группа IIS_IUSRSИзменение
Папка публикации C:\inetpub\wwwroot\buhIIS_IUSRS, IUSRЧтение и выполнение
Папка bin платформыIIS_IUSRSЧтение и выполнение

Для клиент-серверной базы права на файлы базы не нужны: данные лежат в СУБД, а веб-сервер обращается к кластеру 1С по сети. Зато между веб-сервером и сервером 1С должны быть открыты порты агента (1540), менеджера кластера (1541) и диапазон рабочих процессов, заданный в свойствах рабочего сервера.

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

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

Варианты входа в веб-клиент те же, что и в обычном клиенте:

  • 👤 Аутентификация 1С — логин и пароль пользователя базы. Работает из коробки. У пользователя в списке Администрирование → Пользователи и права → Пользователи должен быть разрешён вход в программу и назначен профиль с правами.
  • 🪪 Аутентификация операционной системы — вход без пароля по доменной учётной записи. В карточке пользователя 1С отмечается вход через ОС и указывается его учётная запись Windows. В IIS для приложения публикации включается проверка подлинности Windows, а анонимная — отключается.

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

Доступ из интернета

Пробрасывать порт 80 наружу — плохая идея: логины и пароли пойдут открытым текстом. Минимальный набор:

  1. Сертификат TLS и привязка HTTPS (порт 443) в Диспетчер IIS → Сайт → Привязки.
  2. Перенаправление с HTTP на HTTPS или полное закрытие порта 80.
  3. Публикуйте только нужные базы и только нужные сервисы.

Альтернатива — держать публикацию внутри сети и пускать удалённых сотрудников через VPN.

4. Чего веб-клиент 1С не умеет и чем он отличается от тонкого клиента

Веб-клиент — не урезанная, а иначе устроенная версия тонкого клиента: интерфейс тот же, но исполняется он в браузере. Отсюда ограничения.

  • 🌐 Браузеры. Поддерживаются актуальные Chrome, Edge, Firefox, Safari и Яндекс Браузер. Разрешите для адреса публикации всплывающие окна, иначе часть форм не откроется.
  • 📁 Файлы на компьютере пользователя. Загрузка и выгрузка файлов, работа с криптографией и сканером требуют установленного в браузере «Расширения для работы с 1С:Предприятием» и, для криптографии, компоненты расширения. Программа сама предложит их поставить при первой попытке.
  • 🧩 Внешние компоненты и COM. Работают только компоненты, у которых есть версия для веб-клиента. COM-объекты на клиенте недоступны.
  • 🖨️ Печать. Печатная форма открывается в браузере или выгружается в PDF, прямой печати на выбранный принтер как в тонком клиенте нет.
  • 🔑 Лицензии. Веб-клиент расходует клиентскую лицензию так же, как тонкий клиент. Для клиент-серверной базы лицензию получает сервер 1С, для файловой — компьютер с веб-сервером.

Тонкий клиент тоже умеет подключаться к той же публикации по HTTP: в списке баз выбирается вариант «На веб-сервере» и указывается адрес http://server/buh. Это удобно, когда браузерные ограничения мешают, а прямого доступа к серверу 1С нет.

5. Как ускорить веб-клиент и выдержать больше пользователей

Веб-клиент обычно упирается не в IIS, а в базу. Несколько приёмов, которые реально помогают.

Файловая база: знать предел

Файловая база через веб-сервер обслуживает всех пользователей в одном процессе w3wp.exe. Для 3–5 человек это нормально. При 10–15 активных пользователях начинаются блокировки и замедления — пора переходить на клиент-серверный вариант с СУБД.

Настройки IIS

  • ⚙️ Отдельный пул на каждую базу. Ошибка одной публикации не уронит остальные. Пул создаётся в Диспетчер IIS → Пулы приложений, затем в основных настройках приложения публикации выбирается этот пул.
  • ⚙️ 32-битные приложения. Если стоит 32-битная платформа, в дополнительных параметрах пула установите «Разрешены 32-разрядные приложения» = True. Для 64-битной — False.
  • ⚙️ Перезапуск пула по расписанию. По умолчанию IIS перезапускает пул каждые 1740 минут (29 часов), в произвольное время. Перезапуск обрывает сеансы веб-клиента. Задайте фиксированное время ночью в параметре «Определённое время» раздела «Перезапуск».
  • ⚙️ Тайм-аут простоя. По умолчанию пул останавливается после 20 минут без запросов, и первый вход утром долгий. Для рабочей базы тайм-аут простоя можно поставить 0.

Любое изменение параметров пула перезапускает его. Все открытые сеансы веб-клиента оборвутся — меняйте настройки вне рабочего времени.

Масштабирование

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

После обновления платформы

Частая ловушка: поставили новую версию платформы, старую удалили — и веб-клиент перестал открываться. В web.config публикации остался путь к wsisapi.dll в папке старой версии. Переопубликуйте базу из Конфигуратора новой версии или запустите webinst из её папки bin. Версия модуля веб-сервера должна совпадать с версией платформы сервера 1С.

6. Ошибки при открытии веб-клиента: где смотреть и что делать

Начинайте с того, что видит браузер, затем смотрите журналы.

Где искать причину

  • 📜 Журнал событий Windows (eventvwr.msc → «Журналы Windows → Приложение») — ошибки загрузки модуля и падения w3wp.exe.
  • 📜 Журналы IIS — по умолчанию в C:\inetpub\logs\LogFiles. Там видно код ответа и подкод, например 500 0 или 404 3.
  • 📜 Технологический журнал 1С — включается файлом logcfg.xml в папке conf платформы. Нужен, когда ошибка возникает уже внутри базы.
  • 📜 Подробные ошибки IIS — откройте адрес публикации в браузере прямо на сервере: локально IIS показывает развёрнутую страницу ошибки с модулем и обработчиком.

Частые симптомы

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

Перед правкой прав и пулов проверьте простое: открывается ли база тем же пользователем в обычном тонком клиенте прямо на сервере. Если нет — проблема в базе или лицензии, а не в публикации.

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

Можно ли опубликовать на одном IIS несколько баз?
Да. Каждая публикуется под своим именем (/buh, /zup, /ut) и получает свой адрес. Удобно назначить каждой отдельный пул приложений.
Нужен ли Windows Server, или хватит Windows 10/11?
Для пробы и пары пользователей хватит обычной Windows с включёнными службами IIS. Для постоянной работы лучше серверная ОС: у клиентских Windows есть ограничение на число одновременных подключений к IIS.
Работает ли веб-клиент на телефоне?
Открыть базу в мобильном браузере можно, но интерфейс рассчитан на большой экран. Для телефона удобнее мобильный клиент 1С, который подключается к той же публикации.
Как убрать окно выбора пользователя при входе?
Включите вход через аутентификацию операционной системы для пользователя 1С и проверку подлинности Windows в IIS. Тогда браузер передаст доменную учётную запись автоматически.
Можно ли сделать веб-клиент для базы в облаке 1С:Фреш?
Ничего публиковать не нужно: сервис уже работает через веб-клиент, достаточно открыть его адрес в браузере.