Работа в 1С из браузера: как опубликовать базу на веб-сервере и открыть её снаружи

· 11 мин

Содержание

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

Удалённый доступ через веб-клиент снимает вопрос с RDP и установкой платформы на каждый компьютер. Бухгалтер открывает ссылку в Chrome, Edge, Firefox или Яндекс Браузере и работает в той же базе, что и офис. Ниже разобран путь от чистого сервера до рабочей ссылки по HTTPS, а также типовые сбои при настройке.

Как устроен доступ к 1С через браузер и что для него нужно

Схема простая: браузер → веб-сервер → модуль расширения 1С → база. Модуль расширения — это библиотека из комплекта платформы. Она подключается к Apache или IIS и обслуживает запросы веб-клиента.

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

Что понадобится:

  • 🖥️ Сервер на Windows Server 2016 и новее или Linux. Для файловой базы — тот компьютер, где лежит база, или машина с быстрым доступом к ней.
  • 🌐 Веб-сервер: Apache 2.4 или IIS. На Linux — только Apache.
  • 🧩 Платформа 1С 8.3 с компонентом «Модули расширения веб-сервера». Номер версии платформы на веб-сервере должен совпадать с версией сервера 1С, если база клиент-серверная.
  • 🔑 Лицензии. Веб-клиент расходует клиентские лицензии так же, как тонкий клиент. В клиент-серверном варианте лицензию выдаёт сервер 1С. В файловом — лицензия должна быть доступна на компьютере с веб-сервером.
  • 🔒 Сертификат SSL и доменное имя, если доступ нужен из интернета.

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

Способ подключенияЧто ставить на рабочее местоСкоростьКогда выбирать
Веб-клиент в браузереНичего, только браузерНиже тонкого клиентаРедкие подключения, macOS, чужие компьютеры
Тонкий клиент через HTTPТонкий клиент 1СЗаметно выше веб-клиентаЕжедневная работа удалённых сотрудников
HTTP-сервисы и ODataВнешняя системаЗависит от интеграцииОбмен с сайтом, мобильным приложением, BI

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

Подготовка сервера: веб-сервер и модули расширения 1С

Начните с веб-сервера. Без него пункт публикации в Конфигураторе будет пустым или неактивным.

Установка IIS на Windows Server

  1. Откройте Диспетчер серверов → Управление → Добавить роли и компоненты.
  2. Отметьте роль «Веб-сервер (IIS)».
  3. В службах роли раскройте «Разработка приложений» и включите Расширения ISAPI и Фильтры ISAPI. Без них модуль 1С не загрузится.
  4. Оставьте «Средства управления → Консоль управления IIS».
  5. Завершите мастер. Проверка: http://localhost в браузере на сервере показывает стартовую страницу IIS.

Установка Apache 2.4

На Windows Apache ставят из готовой сборки (например, Apache Lounge) и регистрируют службой командой httpd.exe -k install из каталога bin. На Linux — пакетом из репозитория дистрибутива: apache2 в Debian и Ubuntu, httpd в RHEL-совместимых системах.

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

Компонент «Модули расширения веб-сервера»

Запустите установщик платформы на веб-сервере. На шаге выбора компонентов включите «Модули расширения веб-сервера». Если платформа уже стоит, запустите установку повторно и выберите изменение состава компонентов.

Модуль кладётся в каталог bin платформы, например C:\Program Files\1cv8\8.3.25.1374\bin\. Для Apache 2.4 это wsap24.dll (на Linux — wsap24.so), для IIS — wsisapi.dll.

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

Публиковать можно двумя путями: мышкой из Конфигуратора или командой webinst. Результат одинаковый: каталог публикации с файлом default.vrd и правка конфигурации веб-сервера.

Через Конфигуратор

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

Если дорабатываете конфигурацию и добавили свой HTTP-сервис, его нужно включить в публикацию отдельно. На вкладке HTTP-сервисов поставьте флажок у нужного сервиса и опубликуйте заново.

Командой webinst

Утилита webinst лежит в том же каталоге bin. Она удобна для скриптов и для Linux, где Конфигуратора на сервере может не быть.

Публикация клиент-серверной базы на Apache 2.4 в Windows:

cd "C:\Program Files\1cv8\8.3.25.1374\bin"
webinst -publish -apache24 -wsdir buh -dir "C:\Apache24\htdocs\buh" -connstr "Srvr=srv1c;Ref=buh;" -confpath "C:\Apache24\conf\httpd.conf"

Публикация файловой базы на IIS:

webinst -publish -iis -wsdir buh -dir "C:\inetpub\wwwroot\buh" -connstr "File=""D:\Bases\Buh"";"

Удаление публикации — тот же набор параметров с ключом -delete вместо -publish. Полный список ключей выводит webinst без параметров.

Права на каталоги

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

  • 📁 к каталогу публикации — чтение;
  • 📁 к каталогу файловой базы — изменение (чтение и запись), иначе база не откроется;
  • 📁 к каталогу bin платформы — чтение и выполнение.

Для IIS права выдают группе IIS_IUSRS и пользователю IUSR. Для Apache на Windows — учётной записи, от которой запущена служба (по умолчанию это «Локальная система», ей отдельные права обычно не нужны). На Linux — пользователю www-data или apache.

Настройка Apache и IIS под веб-клиент 1С

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

Что появляется в httpd.conf

В конце файла httpd.conf платформа добавляет блок такого вида:

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

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

Строка LoadModule должна быть одна на весь файл, даже если опубликовано пять баз. Повторное подключение модуля — частая причина, по которой Apache перестаёт стартовать.

После обновления платформы путь в LoadModule указывает на старую версию. Поправьте номер в пути вручную или опубликуйте базы заново из новой версии. Затем перезапустите Apache. Старую платформу не удаляйте, пока не исправили путь.

Проверить синтаксис перед перезапуском можно командой httpd -t на Windows или apachectl configtest на Linux.

Что настраивается в IIS

Для IIS платформа создаёт в каталоге публикации файл web.config с обработчиком wsisapi.dll и приложение внутри сайта по умолчанию. Вручную проверьте пул приложений:

  1. Откройте Диспетчер служб IIS → Пулы приложений.
  2. Найдите пул, в котором работает публикация (обычно DefaultAppPool).
  3. В «Дополнительных параметрах» посмотрите «Разрешить 32-разрядные приложения». Для 32-битной платформы — True, для 64-битной — False.
  4. Там же поставьте «Время простоя (мин.)» в 0, чтобы IIS не выгружал модуль 1С каждые 20 минут простоя. Первый вход после выгрузки занимает заметно дольше.

Файл default.vrd

Это описание публикации в XML. Ключевая строка — атрибут ib со строкой соединения:

<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>

Если базу перенесли на другой сервер, достаточно поправить ib и перезапустить веб-сервер . Публиковать заново не обязательно.

Защищённый доступ к 1С из интернета через HTTPS

Открывать публикацию наружу по http:// нельзя: логин, пароль и данные базы пойдут открытым текстом. Минимум для удалённого доступа — HTTPS на порту 443 и закрытые остальные порты.

Что сделать по шагам

  1. Зарегистрируйте домен или поддомен, например 1c.firma.ru, и направьте его на внешний IP офиса или сервера.
  2. Получите сертификат. Бесплатный вариант — Let’s Encrypt: на Windows через клиент win-acme, на Linux через certbot.
  3. Подключите сертификат:
    • в IIS — привязка сайта https на порт 443 с выбранным сертификатом;
    • в Apache — модуль mod_ssl, директивы SSLCertificateFile и SSLCertificateKeyFile в виртуальном хосте на 443.
  4. Настройте перенаправление с 80 на 443, чтобы пользователи не попадали на открытую версию.
  5. На роутере пробросьте наружу только 443.

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

Аутентификация и пользователи

  • 👤 У каждого пользователя базы должен быть пароль. Пустой пароль при открытой публикации — прямой вход для любого, кто знает адрес.
  • 🚫 Не передавайте логин и пароль в адресе через параметры N и P. Ссылка оседает в истории браузера и журналах веб-сервера.
  • 🛡️ Дополнительный барьер — базовая аутентификация на уровне веб-сервера или доступ только из списка IP. Хороший вариант — пускать удалённых сотрудников через VPN, а публикацию не выставлять наружу вовсе.
  • 🧾 Проверяйте журнал регистрации базы на неудачные входы с незнакомых адресов.

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

Как ускорить работу 1С в браузере

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

Со стороны сервера:

  • ⚡ Ставьте веб-сервер в одну сеть с сервером 1С, лучше на ту же машину или соседнюю виртуалку. Каждый лишний миллисекундный переход между ними умножается на сотни вызовов.
  • ⚡ Для файловой базы веб-сервер должен работать с локальным диском, а не с сетевой папкой. Файловая база по сети через веб-публикацию тормозит сильнее, чем при прямом подключении.
  • ⚡ Отключите простой пула IIS (см. выше) и плановую переработку посреди рабочего дня.
  • ⚡ Если сотрудников больше 10–15 и база файловая, переходите на клиент-серверный вариант. Веб-публикация не снимает ограничений файлового режима.

Со стороны пользователя:

  • 🌐 Используйте актуальную версию браузера на движке Chromium или Firefox.
  • 🧩 Установите «Расширение для работы с файлами» и, если работаете с ЭДО и электронной подписью, расширение для криптографии. Браузер сам предложит их при первой операции с файлами. Без расширения не работают загрузка выписок, вложения и подпись.
  • 🪟 Разрешите всплывающие окна для адреса базы.
  • 🖥️ Для ежедневной работы ставьте тонкий клиент и подключайте его к той же публикации: в списке баз выберите добавление существующей базы и тип расположения «На веб-сервере», укажите адрес https://1c.firma.ru/buh. Это та же публикация, но интерфейс отрисовывается быстрее.

Если медленно открывается только первая форма после паузы, а дальше всё нормально — смотрите на выгрузку пула IIS или на засыпание виртуальной машины, а не на 1С.

Ошибки при подключении к 1С через браузер и их диагностика

Диагностику ведите сверху вниз по цепочке: открывается ли сам веб-сервер → грузится ли модуль 1С → открывается ли база. Логи искать здесь:

  • Apache: logs\error.log в каталоге Apache, на Linux — /var/log/apache2/error.log или /var/log/httpd/error_log;
  • IIS: журнал событий Windows (раздел «Приложение») и каталог C:\inetpub\logs\LogFiles;
  • 1С: журнал регистрации базы и технологический журнал, если он включён.

Разбор типичных симптомов:

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

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

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

Сколько стоит доступ к 1С через браузер?
Отдельной платы фирме 1С за веб-клиент нет. Нужны клиентские лицензии по числу одновременных пользователей и, для клиент-серверной базы, лицензия на сервер 1С. Apache и сертификат Let’s Encrypt бесплатны, IIS входит в Windows Server.
Можно ли работать в 1С через браузер на Mac или планшете?
Да. Веб-клиент работает в Safari и других современных браузерах на macOS. На планшете интерфейс открывается, но для работы с большими формами удобнее компьютер.
Нужна ли публикация, если база в облаке 1С:Фреш?
Нет. В облачных сервисах база уже опубликована провайдером, вы получаете готовую ссылку. Публикация нужна только для базы на своём сервере.
Какие конфигурации работают в веб-клиенте?
Все конфигурации на управляемых формах: Бухгалтерия 3.0, ЗУП 3.1, УТ 11, ERP и другие. Обычные формы старых конфигураций в веб-клиенте не открываются.
Можно ли опубликовать несколько баз на одном сервере?
Да. Каждая база публикуется под своим именем: /buh, /zup, /ut. Модуль расширения подключается к веб-серверу один раз, а публикаций может быть сколько угодно.