Веб-клиент 1С: устройство, отличия от тонкого клиента и настройка на сервере

· 9 мин

Содержание

Веб-клиент 1С открывает информационную базу в браузере: ничего устанавливать на компьютер пользователя не нужно. Работает он через веб-сервер (Apache или IIS), на котором база опубликована, а сам интерфейс в браузере собирается на JavaScript. Тонкий клиент ставится на каждое рабочее место и быстрее, веб-клиент удобен там, где нужен доступ с любого устройства: из дома, с планшета, с чужого компьютера.

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

Как устроен веб-клиент: путь запроса от браузера до базы

Цепочка состоит из четырёх звеньев:

  1. Браузер пользователя. Загружает интерфейс и отправляет запросы по HTTP или HTTPS.
  2. Веб-сервер. Принимает запросы по адресу публикации и передаёт их расширению веб-сервера 1С.
  3. Расширение веб-сервера. Модуль, который ставится вместе с платформой. Он связывает веб-сервер и информационную базу.
  4. Информационная база. Либо кластер серверов 1С:Предприятия (клиент-серверный вариант), либо файл базы на диске.

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

Адрес базы в браузере выглядит как http://имя-сервера/имя-публикации. Имя публикации задаётся при публикации базы, а параметры хранятся в файле default.vrd в каталоге публикации.

💡 Для тонкого клиента этот же файл публикации нужен, если база подключается по веб-адресу, поэтому одна публикация обслуживает оба типа клиентов.

Веб-клиент, тонкий и толстый клиент: сравнение

Толстый клиент нужен в основном для режима Конфигуратора и ряда служебных операций. В повседневной работе пользователю нужны два варианта.

ПараметрВеб-клиентТонкий клиент
Установка на компьютерНе требуетсяТребуется платформа
Что нужно для запускаБраузер и адрес базыПлатформа и строка подключения
Скорость работыНиже, зависит от канала и браузераВыше
Работа с локальными файлами и оборудованиемОграничена, нужны расширенияПолная
Нагрузка на веб-серверЕсть всегдаТолько при подключении по веб-адресу
Подходит дляУдалённого и разового доступаЕжедневной работы

Главные различия в возможностях такие:

  • 📂 Файлы. Загрузить файл с компьютера или сохранить на диск веб-клиент может, но через механизмы браузера и расширение для работы с 1С. Свободного доступа к папкам, как у тонкого клиента, у него нет.
  • 🖨 Оборудование. Подключаемое торговое оборудование (сканеры, фискальные регистраторы) в браузере работает хуже и требует отдельной настройки.
  • 🔌 Внешние компоненты и COM. Всё, что завязано на COM-объекты или локальные программы, в веб-клиенте не заработает.
  • 🔐 Электронная подпись. Для подписи документов в браузере нужны расширение и криптопровайдер на компьютере пользователя.

Если в конфигурации много обмена с локальными устройствами и файлами, веб-клиент для основной работы не подойдёт.

Требования к серверу и браузеру

Сервер

Веб-клиенту нужен веб-сервер, который умеет работать с расширением 1С. Подходят:

  • Apache HTTP Server;
  • Microsoft IIS (на Windows Server).

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

Ориентиры по ресурсам. Это не жёсткие нормы, а отправная точка:

Одновременных пользователейПроцессорОперативная память под веб-сервер и кластер
До 102 ядра8 ГБ
10-304 ядра16 ГБ
30-1008 ядер и больше32 ГБ и больше

Один сеанс веб-клиента создаёт на сервере заметно большую нагрузку, чем тонкий клиент: часть работы с формой переезжает с компьютера пользователя на сервер. Закладывайте запас.

Браузер

Веб-клиент 8.3 поддерживает современные версии Chrome, Firefox, Safari, Edge и Яндекс Браузера. Точный список для вашей версии платформы смотрите в документации к ней. Устаревшие браузеры, прежде всего Internet Explorer, не поддерживаются.

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

Пошаговая настройка: как опубликовать базу для веб-клиента

Порядок для клиент-серверной базы на Apache. Для IIS логика та же, отличаются только окна настройки.

  1. Установите платформу на сервер. В компонентах отметьте модули расширения веб-сервера.
  2. Убедитесь, что веб-сервер установлен и запускается без ошибок. Откройте его стартовую страницу в браузере.
  3. Запустите Конфигуратор нужной базы от имени администратора. Для публикации нужны права на запись в каталог и настройки веб-сервера.
  4. Откройте Администрирование → Публикация на веб-сервере.
  5. Выберите веб-сервер из списка, задайте имя публикации (латиницей, без пробелов) и каталог публикации.
  6. Отметьте, нужна ли публикация веб-сервисов и стандартного интерфейса OData, если они используются. Если нет, оставьте лишнее выключенным.
  7. Нажмите кнопку публикации и дождитесь сообщения об успехе.
  8. Перезапустите веб-сервер, если конфигурация не подхватилась сама.
  9. В браузере откройте http://имя-сервера/имя-публикации. Должна появиться форма входа в базу.

⚠️ Перезапуск веб-сервера оборвёт все активные HTTP-сессии. Выполняйте его вне рабочих часов или предупредите пользователей.

Что проверить сразу после публикации:

Проверка публикации веб-клиента
Выполнено: 0 / 6

Оптимизация производительности: чем снять нагрузку с веб-клиента

Медленный веб-клиент почти всегда упирается в одну из трёх вещей: канал связи, сервер или сама конфигурация. Начните с диагностики, а не с настройки.

Сначала проверьте сеть и браузер

  • Откройте базу в другом браузере. Если разница заметна, дело в браузере или его расширениях.
  • Отключите блокировщики рекламы и лишние расширения. Они вмешиваются в запросы и тормозят интерфейс.
  • Сравните с тонким клиентом на том же канале. Если тонкий клиент работает нормально, а веб-клиент нет, проблема на стороне веб-сервера или браузера.

Затем сервер

  • 🧠 Следите за оперативной памятью и числом рабочих процессов веб-сервера. Если память упирается в потолок, система уходит в своп и всё замедляется.
  • ⚙️ Включите сжатие ответов на веб-сервере (gzip). Интерфейс веб-клиента передаёт много текстовых данных, и сжатие сильно экономит трафик.
  • 📦 Настройте кэширование статических ресурсов с длинными заголовками. Это снижает число повторных загрузок при каждом входе.
  • 🔄 Не держите на одном сервере и кластер 1С, и базу данных, и веб-сервер на слабом железе, если пользователей больше десяти.

Потом конфигурация

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

Лимит одновременных запросов: как его настроить

Веб-сервер обрабатывает одновременно только ограниченное число запросов. Когда пользователей много, а лимит мал, новые запросы ждут в очереди, и интерфейс «подвисает».

Apache. Число одновременно обрабатываемых запросов задаёт параметр MaxRequestWorkers в настройках модуля обработки запросов (MPM). Если пользователей больше, чем значение параметра, запросы будут упираться в очередь. Увеличивать значение нужно вместе с ростом памяти: каждый процесс или поток тоже потребляет ресурсы.

IIS. Здесь управление идёт через пул приложений. Для него задают длину очереди запросов и число рабочих процессов. Если очередь переполнена, клиент получает ошибку «сервис недоступен».

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

Таймаут неактивного соединения: сколько держать сеанс

Пользователь ушёл на совещание, а вкладка с базой осталась открытой. Сколько сервер будет хранить такой сеанс, зависит от нескольких таймаутов.

  • На веб-сервере Apache за ожидание отвечают Timeout (сколько ждать запрос) и KeepAliveTimeout (как долго держать соединение открытым между запросами).
  • В IIS у пула приложений есть параметр простоя: после заданного времени без обращений рабочий процесс выгружается. Это экономит память, но следующий вход после простоя будет медленнее.
  • В кластере 1С у сеанса есть собственные настройки завершения неактивных сеансов, они не зависят от веб-сервера.

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

💡 Сеанс веб-клиента занимает клиентскую лицензию. Если лицензий мало, короткий таймаут помогает не терять их на «забытых» вкладках.

Типичные ошибки веб-клиента и способы их устранения

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

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

Безопасность веб-клиента: как закрыть базу, открытую в интернет

Опубликованная база видна по сети, поэтому безопасность настраивают заранее.

  1. Включите HTTPS. Без шифрования логины и пароли идут открытым текстом. Сертификат ставят на веб-сервер, сам по себе он бесплатный, если взять его у центра сертификации, который это допускает.
  2. Не публикуйте лишнее. Веб-сервисы и OData включайте только там, где они реально используются.
  3. Ограничьте доступ. По возможности пускайте внутрь только через VPN или со списка разрешённых адресов. Если база нужна «всему интернету», закройте всё остальное.
  4. Настройте надёжную проверку пользователей. Длинные пароли, разные учётки для сотрудников, отключение уволенных. Пользователя с полными правами не используйте для ежедневной работы.
  5. Обновляйте веб-сервер и платформу. Старые версии содержат известные уязвимости.
  6. Ведите журнал. Смотрите журнал регистрации 1С и журналы веб-сервера: подозрительные входы видны сразу.

Не открывайте базу в интернет с паролем «123» или без пароля, даже на время теста. Боты находят такие публикации за часы.

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

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

Нужно ли устанавливать платформу 1С на компьютер для веб-клиента?
Нет. Достаточно современного браузера и адреса опубликованной базы. Платформа ставится только на сервер.
Можно ли работать в веб-клиенте с мобильного телефона?
Можно, он открывается в браузере телефона. Но на небольшом экране удобно только просматривать данные и вводить простые документы.
Занимает ли веб-клиент лицензию?
Да. Каждый сеанс занимает клиентскую лицензию так же, как и другие типы клиентов.
Чем веб-клиент отличается по скорости от тонкого?
Обычно он медленнее: часть работы идёт через браузер и сеть. Разница сильнее на тяжёлых формах и слабых каналах.
Можно ли публиковать файловую базу?
Можно. Веб-сервер обращается к файлу базы напрямую, но при большом числе пользователей клиент-серверный вариант надёжнее.