Как открыть базу 1С в браузере: публикация на IIS и Apache

· 9 мин

Содержание

Чтобы веб-клиент 1С заработал, базу нужно опубликовать на веб-сервере (IIS или Apache) через Конфигуратор: Администрирование → Публикация на веб-сервере. После публикации база открывается в браузере по адресу вида http://имя-сервера/имя-публикации/. Отдельной установки на рабочие места не требуется — нужен только браузер.

Для настройки доступа понадобятся три вещи: веб-сервер, модули расширения веб-сервера из дистрибутива платформы 1С:Предприятие 8.3 и права учётной записи веб-сервера на нужные папки. Порядок одинаков для Windows Server 2016 и новее и для Linux с Apache 2.4, отличаются только пути и имена служб.

Подготовка веб-сервера под веб-клиент 1С

Сначала решите, какой веб-сервер ставить. 1С:Предприятие 8.3 поддерживает IIS и Apache 2.2/2.4. Для новых установок берите Apache 2.4 или IIS 10.

Веб-серверКогда выбиратьНа что обратить внимание
IISWindows Server, нужна Windows-аутентификация, администратор привык к оснастке IISКомпоненты ISAPI, разрядность пула приложений
Apache 2.4 (Windows)Не хочется ставить роль IIS, нужен один конфиг-файлРазрядность Apache и платформы должна совпадать
Apache 2.4 (Linux)Сервер 1С на Linux, публикация рядом с нимПрава пользователя www-data / apache на каталог публикации

Установка IIS

Добавьте роль «Веб-сервер (IIS)» через «Диспетчер серверов». В компонентах роли отметьте:

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

Установка Apache 2.4

На Windows скачайте сборку Apache 2.4 нужной разрядности и установите её как службу командой httpd.exe -k install. На Linux достаточно пакета из репозитория: apache2 в Debian/Ubuntu или httpd в RHEL-подобных системах.

Модули расширения веб-сервера

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

Разрядность модуля, веб-сервера и платформы должна совпадать. 64-битный Apache не загрузит 32-битный wsap24.dll, и наоборот.

Публикация базы 1С на веб-сервере

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

Способ 1. Через Конфигуратор

  1. Запустите Конфигуратор от имени администратора (правый клик по ярлыку → «Запуск от имени администратора»). Без повышенных прав запись в каталог веб-сервера и в его конфигурацию не пройдёт.
  2. Откройте Администрирование → Публикация на веб-сервере.
  3. В поле «Имя» укажите латиницей короткое имя публикации, например buh. Оно станет частью адреса.
  4. Выберите веб-сервер из списка (IIS или Apache 2.4) и каталог публикации — например, C:\inetpub\wwwroot\buh или C:\www\buh.
  5. Отметьте «Публиковать доступ для клиентских приложений». Для Apache укажите путь к httpd.conf, если мастер не нашёл его сам.
  6. Нажмите «Опубликовать». Для Apache после этого перезапустите службу.

Проверьте адрес http://localhost/buh/ прямо на сервере. Если открылась форма входа в 1С — публикация работает.

Способ 2. Утилитой webinst

Удобно для скриптов и Linux, где нет графического Конфигуратора. Пример для IIS и серверной базы:

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

Для Apache 2.4 на Linux:

sudo /opt/1cv8/x86_64/8.3.24.1467/webinst -publish -apache24 -wsdir buh \
  -dir /var/www/buh -connstr "Srvr=srv1c;Ref=buh;" -confpath /etc/apache2/apache2.conf
sudo systemctl restart apache2

Номер версии в пути подставьте свой. Для файловой базы строка соединения выглядит как File="D:\Bases\buh";.

Что появится в каталоге и в конфиге

В каталоге публикации создаётся файл default.vrd — описание публикации. В Apache в конец httpd.conf дописывается блок примерно такого вида:

LoadModule _1cws_module "C:/Program Files/1cv8/8.3.24.1467/bin/wsap24.dll"

# 1c publication
Alias "/buh" "C:/www/buh/"
<Directory "C:/www/buh/">
    AllowOverride All
    Options None
    Require all granted
    SetHandler 1c-application
    ManagedApplicationDescriptor "C:/www/buh/default.vrd"
</Directory>

После обновления платформы публикацию нужно обновить: в строке LoadModule (Apache) или в обработчике IIS остаётся путь к старой версии. Если старую версию удалить, веб-клиент перестанет открываться. Достаточно повторить публикацию из Конфигуратора новой версии.

Права, HTTPS и параметры подключения

Права доступа к папкам

Веб-сервер работает под своей учётной записью, и ей нужны права:

ЧтоКому (IIS)Кому (Apache Linux)Права
Каталог публикацииIIS_IUSRSwww-data / apacheЧтение
Каталог bin платформыIIS_IUSRS—Чтение и выполнение
Каталог файловой базыIIS_IUSRSwww-data / apacheИзменение

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

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

Если стоит 32-битная платформа, в дополнительных параметрах пула приложений включите «Разрешить 32-разрядные приложения». Для 64-битной платформы этот параметр должен быть выключен.

HTTPS обязателен для доступа из интернета

По HTTP логин и пароль 1С передаются открытым текстом. Публиковать базу наружу без шифрования нельзя.

  • 🔒 В IIS добавьте привязку https на порт 443 и выберите сертификат в «Привязках» сайта.
  • 🔒 В Apache включите mod_ssl и пропишите SSLCertificateFile и SSLCertificateKeyFile в виртуальном хосте 443.
  • 🔒 Для бесплатного сертификата подойдёт Let’s Encrypt (certbot на Linux, win-acme на Windows).
  • 🔒 Закройте порт 80 или настройте редирект на 443.

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

Вход по учётной записи Windows

Если в карточках пользователей 1С включена «Аутентификация операционной системы», в IIS включите «Проверку подлинности Windows» для сайта публикации. Анонимную проверку подлинности оставьте включённой — иначе перестанет работать вход по логину и паролю 1С.

Параметры в адресной строке

Веб-клиент принимает параметры запуска в URL. Самые полезные:

  • http://srv/buh/ru_RU/ — сразу русский интерфейс;
  • ?N=Иванов — подставить имя пользователя в форму входа;
  • ?C=текст — передать параметр запуска в конфигурацию.

Пароль через параметр P= передать тоже можно, но он окажется в истории браузера и журналах веб-сервера. Так делать не стоит.

Ускорение веб-клиента

Веб-клиент медленнее тонкого: интерфейс рисуется браузером, а код клиентских модулей выполняется в JavaScript. Что реально помогает:

  1. Сжатие ответа. В IIS включите сжатие динамического содержимого. В Apache — модуль mod_deflate. Трафик формы сокращается в разы, особенно на медленном канале.
  2. Кэширование статики. Браузер кэширует скрипты и картинки веб-клиента. Не выключайте кэш групповой политикой и не чистите его при каждом выходе.
  3. Современный браузер. Свежие версии Chrome, Edge, Firefox, Яндекс Браузера заметно быстрее выполняют код веб-клиента. Старые версии вне списка поддерживаемых платформой лучше не использовать.
  4. Близость веб-сервера к серверу 1С. Ставьте веб-сервер в ту же локальную сеть, что и кластер. Задержка между ними умножается на каждое серверное обращение.
  5. HTTP/2. В IIS 10 он включается вместе с HTTPS. В Apache нужен модуль mod_http2.
  6. Отказ от модальности. Типовые конфигурации на «Такси» работают без модальных окон. В доработках старайтесь не использовать модальные вызовы — в браузере они работают хуже.

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

Расширения браузера и внешние компоненты

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

Когда без расширения не обойтись

  • 📁 загрузка банковских выписок и выгрузка файлов в выбранную папку;
  • 📎 прикрепление файлов к документам и справочникам;
  • 🔏 подписание документов ЭДО и отчётности электронной подписью;
  • 🖨 работа с торговым оборудованием через внешние компоненты.

Как установить

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

Разрешите всплывающие окна для адреса публикации. Веб-клиент открывает часть форм в отдельных окнах, и блокировщик всплывающих окон их просто прячет — выглядит так, будто кнопка не работает.

Внешние компоненты

Компоненты в формате Native API работают в веб-клиенте, только если разработчик собрал версии для браузеров и нужной ОС. Старые COM-компоненты в веб-клиенте не работают вовсе. Если оборудование в тонком клиенте работает, а в браузере нет — проверьте у поставщика драйвера, есть ли вариант для веб-клиента.

Лицензии

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

Ошибки подключения к веб-клиенту

Большинство проблем решается по тексту ошибки: найдите свой симптом и проверьте указанную причину.

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

Где искать подробности

  • 🔎 IIS пишет журналы в C:\inetpub\logs\LogFiles, подробная ошибка видна при открытии адреса прямо на сервере.
  • 🔎 Apache на Windows — каталог logs в папке установки, на Linux — /var/log/apache2/error.log или /var/log/httpd/error_log.
  • 🔎 Проверка конфигурации Apache без перезапуска: httpd -t (Windows) или apachectl configtest (Linux).

Перезапуск IIS (iisreset) или службы Apache обрывает все текущие сеансы веб-клиента. Несохранённые документы у пользователей пропадут. Делайте это вне рабочего времени или предупредите людей заранее.

Частые вопросы о веб-клиенте 1С

Можно ли открыть файловую базу 1С через браузер?
Да. Файловая база публикуется так же, как серверная. Веб-сервер должен стоять на том же компьютере или иметь сетевой доступ к папке базы с правами на изменение.
Нужна ли отдельная лицензия на веб-сервер?
Нет, отдельной лицензии на сам веб-сервер не нужно. Каждый сеанс веб-клиента занимает обычную клиентскую лицензию.
Чем веб-клиент отличается от тонкого клиента по адресу http?
Тонкий клиент тоже умеет подключаться к публикации по адресу http://srv/buh, но работает как программа на компьютере и обычно быстрее. Веб-клиент не требует установки платформы на рабочее место.
Работает ли веб-клиент на Mac и планшете?
На macOS — да, в поддерживаемых браузерах, включая Safari. На планшете интерфейс откроется, но работать с формами на маленьком экране неудобно; для мобильных устройств лучше мобильный клиент.
Можно ли опубликовать несколько баз на одном сервере?
Да. Каждая база получает своё имя публикации и свой каталог: http://srv/buh/, http://srv/zup/ и так далее.