Работа с базой 1С из браузера: веб-сервер, публикация и первый вход

· 9 мин

Содержание

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

Способов поднять веб-доступ, по сути, два. IIS выбирают, когда сервер на Windows и не хочется ставить ничего стороннего. Apache — когда сервер на Linux или нужен один и тот же порядок настройки на любых системах. Механизм общий для всей платформы 8.3 и не зависит от конфигурации: Бухгалтерия, ЗУП и УТ публикуются одинаково.

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

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

Сервер:

  • 🖥️ Windows Server 2016 и новее (или Windows 10/11 для небольшого офиса) либо Linux с Apache.
  • 📦 Платформа 1С:Предприятие 8.3 с компонентом «Модули расширения веб-сервера». Его отмечают при установке платформы, по умолчанию он не ставится.
  • 🔢 Разрядность модуля совпадает с разрядностью веб-сервера: 64-битный Apache работает только с 64-битной платформой.
  • 🗄️ Сама база: файловая (папка с 1Cv8.1CD) или клиент-серверная на сервере 1С.

Клиент:

  • 🌐 Актуальный браузер: Chrome, Firefox, Edge, Яндекс Браузер или Safari.
  • 🔓 Разрешены всплывающие окна для адреса публикации. Без этого часть форм не откроется.
  • 📶 Стабильный канал. Веб-клиент чувствителен к задержкам сильнее, чем к скорости.

Файловую базу через веб опубликовать можно, и для 2–5 пользователей это рабочий вариант. Но к файлу обращается процесс веб-сервера, поэтому у его учётной записи должны быть права на папку базы. Для большего числа пользователей разумнее клиент-серверный вариант.

IIS, Apache или Nginx: какой веб-сервер выбрать для 1С

У платформы есть готовые модули для IIS и для Apache. Для Nginx модуля нет, поэтому напрямую 1С через Nginx не опубликовать.

Веб-серверКогда выбиратьОсобенности
IISWindows-сервер, нужен «родной» компонент без сторонних программСтавится из ролей Windows, нужны компоненты ISAPI. Публикация из Конфигуратора работает сразу
Apache 2.4Linux-сервер или единая настройка на разных ОСМодуль wsap24.dll (Windows) или wsap24.so (Linux). Нужен доступ к httpd.conf
NginxКак внешний прокси перед IIS или ApacheПринимает HTTPS из интернета и передаёт запросы внутрь. Публикацию сам не обслуживает

Схема «Nginx снаружи, Apache или IIS внутри» удобна, когда на одном адресе уже работают сайты или когда сертификаты удобнее держать в одном месте. Для офиса с одним сервером и одной базой хватит IIS или Apache без прокси.

Установка веб-сервера для веб-доступа к 1С

Вариант 1. IIS на Windows Server

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

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

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

Вариант 2. Apache 2.4

  1. Установите Apache 2.4 той же разрядности, что и платформа. На Windows — сборку для Win64, на Linux — пакет apache2 или httpd из репозитория дистрибутива.
  2. На Windows зарегистрируйте службу: httpd.exe -k install из папки bin, запущенной от администратора.
  3. Проверьте, что http://localhost/ отвечает.
  4. Убедитесь, что учётная запись службы Apache имеет права на чтение и запись в папку публикации и (для файловой базы) в папку базы.

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

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

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

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

Строка подключения в default.vrd бывает двух видов. Для файловой базы — File="D:\Bases\Buh";, для клиент-серверной — Srvr="srv1c";Ref="buh";, где srv1c — имя сервера 1С, а buh — имя базы в кластере. Если базу перенесли в другую папку или на другой сервер, достаточно поправить эту строку и перезапустить веб-сервер . Переопубликовывать базу целиком не нужно.

Через утилиту webinst

Утилита лежит в папке bin платформы. Её используют на серверах без графического Конфигуратора, на Linux и в скриптах развёртывания.

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

cd "C:\Program Files\1cv8\8.3.24.1467\bin"
webinst -publish -iis -wsdir buh -dir "C:\inetpub\wwwroot\buh" -connstr "File=""D:\Bases\Buh"";"

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

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

Номер версии в пути замените на свой. Удалить публикацию можно той же утилитой с ключом -delete.

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

После публикации в Apache в конце конфигурационного файла добавляется блок примерно такого вида:

LoadModule _1cws_module "C:/Program Files/1cv8/8.3.24.1467/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 перестанет запускаться. Исправьте путь вручную или переопубликуйте базу из новой версии Конфигуратора. В IIS аналогичная проблема решается повторной публикацией.

Первый вход

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

Эту же публикацию можно использовать и для тонкого клиента : в списке баз добавьте существующую базу, выберите тип «На веб-сервере» и укажите тот же адрес.

Перед первым входом через браузер
Выполнено: 0 / 6

Защита веб-доступа к 1С

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

  • 🔐 HTTPS. В IIS добавьте привязку https с сертификатом в настройках сайта. В Apache подключите модуль mod_ssl и укажите сертификат и ключ в виртуальном хосте. Бесплатный сертификат Let’s Encrypt подходит, если у сервера есть доменное имя.
  • 👤 Пользователи с паролями. У каждого — своя учётная запись 1С и пароль. Пустые пароли и общий логин на всех недопустимы.
  • 🧩 Только нужное. Не публикуйте OData и HTTP-сервисы, если ими не пользуются. Каждый лишний интерфейс — ещё одна точка доступа к данным.
  • 🛡️ Ограничение по адресам. Если сотрудники работают из известных мест, разрешите доступ к порту 443 только с их IP на межсетевом экране. Другой путь — пускать к публикации только через VPN.
  • 🚪 Нестандартное имя публикации. buh и zup подбирают первыми. Это не защита, но снижает шум от сканеров.

Проброс порта 80 на сервер с базой «просто чтобы заработало» — самая частая дыра. Если HTTPS пока не настроен, оставьте доступ только внутри сети или через VPN.

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

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

Ещё одна частая ситуация — на сервере установлено несколько версий платформы. Публикация привязана к той версии, чей Конфигуратор или webinst её создал. Для клиент-серверной базы эта версия должна совпадать с версией сервера 1С, иначе подключение к кластеру не пройдёт.

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

Как ускорить работу веб-клиента

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

  • ⚡ Переведите базу на клиент-серверный вариант, если работают больше 5 человек. Файловая база через веб-сервер быстро упирается в блокировки файла.
  • 📍 Держите веб-сервер рядом с базой. В идеале — на той же машине или в одной локальной сети с сервером 1С и СУБД.
  • 🌍 Проверьте задержку. При пинге до сервера выше 100 мс открытие форм заметно тормозит. Помогает размещение ближе к пользователям или VPN с меньшим числом промежуточных узлов.
  • 🧹 Чистите кэш браузера после обновления конфигурации, если формы ведут себя странно.
  • 🖥️ Сравните с тонким клиентом. Через ту же публикацию тонкий клиент работает быстрее браузера и лучше дружит с печатью и файлами. Для сотрудников, которые сидят в 1С весь день, это часто лучший вариант.
Режим доступаЧто нужно у пользователяКогда удобен
Веб-клиентТолько браузерРедкий вход, чужой компьютер, Mac или Linux без установки
Тонкий клиент через веб-серверУстановленный тонкий клиент 1СЕжедневная работа удалённых сотрудников
Тонкий клиент в локальной сетиТонкий клиент, доступ к серверу 1СОфис, без веб-сервера

Частые вопросы о веб-доступе к 1С

Нужна ли отдельная лицензия для работы через браузер?
Веб-клиент использует обычную клиентскую лицензию 1С, как и тонкий клиент. Отдельной «веб-лицензии» нет, но каждый одновременный сеанс занимает лицензию.
Можно ли опубликовать несколько баз на одном веб-сервере?
Да. Каждая база публикуется под своим именем: /buh/, /zup/, /ut/. Все публикации работают одновременно через один IIS или Apache.
Работает ли веб-клиент на Mac и планшете?
Да, в Safari и других современных браузерах. На планшете работать можно, но формы рассчитаны на большой экран, поэтому удобство ниже, чем на компьютере.
Почему при обновлении конфигурации пользователей веб-клиента выбрасывает?
Обновление структуры базы требует монопольного доступа, и сеансы веб-клиента завершаются так же, как сеансы обычного клиента. Обновляйте в нерабочее время.
Можно ли открыть базу по внешнему адресу без белого IP?
Без внешнего IP или домена браузер сервер не найдёт. Варианты — VPN до офиса, аренда сервера с внешним адресом или размещение базы в облаке у провайдера.