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

· 9 мин

Содержание

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

Типичная ситуация: главбух уехал в отпуск, а закрыть месяц нужно, причём с чужого ноутбука, где 1С не установлена. Или в офис пришёл новый сотрудник на macOS. Веб-клиент решает обе задачи: на компьютере пользователя нужен только браузер. Вся настройка делается один раз на стороне сервера, и описанное ниже одинаково для любой конфигурации: Бухгалтерии, ЗУП, УТ.

Что нужно на сервере до публикации базы

Веб-клиент не работает сам по себе. Между браузером и базой стоит веб-сервер с модулем расширения 1С, который переводит HTTP-запросы в обращения к информационной базе.

Минимальный набор:

  • 🖥️ Веб-сервер. На Windows — IIS (Internet Information Services) или Apache HTTP Server 2.4. На Linux — Apache 2.4.
  • 🧩 Модули расширения веб-сервера 1С. Это компонент дистрибутива платформы. При установке платформы его нужно отметить отдельно — по умолчанию он часто не ставится.
  • 📦 Та же версия платформы, что и у базы. Для клиент-серверной базы номер модуля расширения должен совпадать с номером сервера 1С до последней цифры.
  • 🔑 Лицензии. Каждый сеанс веб-клиента занимает клиентскую лицензию, как обычный клиент.

Разрядность — главный подвох

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

Какие роли включить в IIS

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

  1. «Расширения ISAPI».
  2. «Фильтры ISAPI».

Средства управления IIS («Консоль управления IIS») тоже нужны — без них Конфигуратор не увидит веб-сервер. На Windows 10 и 11 то же самое включается в «Компонентах Windows».

Где лицензия для веб-клиента

Вариант базыГде должна быть лицензия
ФайловаяНа компьютере, где работает веб-сервер
Клиент-сервернаяНа сервере 1С:Предприятия

Ключи на компьютерах пользователей для веб-клиента не нужны.

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

Публикация делается из Конфигуратора той базы, которую открываем в браузере.

Шаги в Конфигураторе

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

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

Что появится после публикации

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

<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
       base="/buh"
       ib="File=&quot;D:\Bases\Buh&quot;;">
</point>

Для клиент-серверной вместо File= будет Srvr=&quot;srv1c&quot;;Ref=&quot;buh&quot;;. Если базу перенесли в другую папку, проще исправить путь в default.vrd и перезапустить веб-сервер , чем публиковать заново.

Для Apache в конце httpd.conf добавится блок с директивой LoadModule и путём к модулю wsap24.dll. Если платформу потом обновили, этот путь продолжает смотреть на каталог старой версии — частая причина ошибки после обновления.

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

Когда Конфигуратор недоступен (Linux, сервер без графики), используют утилиту webinst из каталога bin платформы:

webinst -publish -apache24 -wsdir buh -dir "C:\Apache24\htdocs\buh" -connstr "Srvr=srv1c;Ref=buh;" -confpath "C:\Apache24\conf\httpd.conf"

Для IIS вместо -apache24 указывают -iis, а параметр -confpath не нужен.

Доступ к папке базы и вход под пользователем 1С

Права учётной записи веб-сервера

Для файловой базы веб-сервер сам открывает файл 1Cv8.1CD. Значит, учётной записи, от которой он работает, нужны права на изменение каталога базы:

  • 👤 IIS — группа IIS_IUSRS и учётная запись IUSR, либо удостоверение пула приложений;
  • 👤 Apache — учётная запись службы Apache2.4 (смотрите на вкладке «Вход в систему» в свойствах службы).

Права выдают в свойствах папки базы на вкладке «Безопасность». Чтения мало: при работе 1С создаёт и меняет служебные файлы рядом с базой.

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

Пользователи и пароли

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

  • в Бухгалтерии 3.0 и ЗУП 3.1 — Администрирование → Настройки пользователей и прав → Пользователи;
  • в Конфигураторе — Администрирование → Пользователи.

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

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

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

Для доступа из интернета публикуйте базу только по HTTPS. По обычному HTTP логин и пароль идут по сети без шифрования. Сертификат Let’s Encrypt для домена бесплатен и ставится и на IIS, и на Apache.

Адрес для входа в базу 1С из браузера

Общий вид адреса:

http://<сервер>[:порт]/<имя публикации>/[язык]/

Примеры:

СитуацияАдрес
Сервер в локальной сетиhttp://srv-app/buh/
Тот же сервер, интерфейс на русскомhttp://srv-app/buh/ru_RU/
Apache на нестандартном портуhttp://srv-app:8080/buh/
Доступ из интернета по доменуhttps://1c.firma.ru/buh/

Имя публикации в адресе должно совпадать с полем «Имя» из окна публикации, с учётом регистра на Linux. Сегмент языка необязателен: без него интерфейс берётся из настроек пользователя.

Параметры в адресе

После знака вопроса можно передать логин и пароль: http://srv-app/buh/?N=Иванов&P=12345. Это удобно для киоска или демо-стенда, но в рабочей базе так делать не стоит: пароль останется в истории браузера и в журналах веб-сервера.

Тот же адрес в тонком клиенте

Опубликованную базу можно открыть не только браузером. В списке баз тонкого клиента нажмите «Добавить», выберите «Добавление в список существующей информационной базы» и тип расположения «На веб-сервере», затем вставьте тот же адрес. Тонкий клиент кеширует формы на диске и обычно работает заметно быстрее веб-клиента.

Какие браузеры подходят

Веб-клиент рассчитан на актуальные версии Chrome, Firefox, Edge и Safari. Браузеры на движке Chromium, например Яндекс Браузер, ведут себя так же, как Chrome. Перед первым входом проверьте два момента:

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

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

Большинство сбоев видно по коду ответа веб-сервера или по тексту ошибки на странице.

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

Если ошибку не удаётся найти, посмотрите журнал веб-сервера: в Apache это logs\error.log, в IIS — журналы в C:\inetpub\logs\LogFiles и «Просмотр событий» Windows. Текст ошибки там почти всегда подробнее, чем в браузере.

Если после всех проверок база не открывается

Опубликуйте пустую тестовую базу под другим именем. Если тестовая открывается — проблема в правах или строке соединения рабочей базы. Если нет — в самом веб-сервере или модуле расширения. Такая проверка за пять минут делит поиск пополам.

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

Веб-клиент медленнее тонкого: каждая форма и каждый вызов сервера идут через HTTP. На медленном канале это хорошо заметно. Что реально помогает:

  • 🌐 Сократить задержку, а не только ширину канала. Для веб-клиента важнее пинг до сервера, чем мегабиты. Сервер в том же городе работает ощутимо быстрее, чем на другом континенте.
  • 🏢 Перевести базу в клиент-серверный вариант. Файловая база через веб-сервер быстро упирается в блокировки при нескольких одновременных пользователях.
  • 🪟 Не держать открытыми десятки окон. Каждое открытое окно — это объекты на сервере и память в браузере. Закрывайте отчёты, которые уже не нужны.
  • 📊 Облегчить начальную страницу. Тяжёлые панели и списки на стартовой странице грузятся при каждом входе. Уберите лишнее в настройках начальной страницы.
  • 🗜️ Включить сжатие на веб-сервере. Модули mod_deflate в Apache и «Сжатие динамического содержимого» в IIS уменьшают объём передаваемых данных.
  • 💻 Предложить тонкий клиент через HTTP. Тем, кто работает в базе весь день, удобнее тонкий клиент по тому же адресу: формы кешируются локально.
Способ подключенияЧто нужно у пользователяСкоростьКогда выбирать
Веб-клиентТолько браузерНижеРазовый вход, чужой компьютер, macOS
Тонкий клиент через веб-серверУстановленный тонкий клиентВышеЕжедневная работа из удалённого офиса
Удалённый рабочий стол (RDP)Клиент RDPВысокая, зависит от сервераМного пользователей, тяжёлые отчёты

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

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