Веб-клиент 1С: как работать с базой из браузера без установки программы
Содержание
Веб-клиент 1С — это способ работать с базой 1С:Предприятия 8.3 прямо в браузере, по обычной ссылке вида http://server/base/, без установки платформы на компьютер пользователя. Базу для этого публикуют на веб-сервере (IIS или Apache), а браузер получает интерфейс и выполняет клиентскую часть программы сам.
Частое заблуждение — считать веб-клиент «облачной 1С» или отдельной программой, которую надо покупать. Это не так. Веб-клиент входит в состав платформы, а база остаётся там, где была: на вашем сервере или в файловом каталоге. Меняется только способ подключения.
Как устроен веб-клиент 1С
Схема подключения состоит из трёх звеньев:
- 🌐 Браузер пользователя. Отображает формы и выполняет клиентский код конфигурации. Платформа заранее переводит этот код в JavaScript, поэтому ничего ставить не нужно.
- 🖥️ Веб-сервер с модулем расширения 1С. Принимает запросы браузера по HTTP или HTTPS и передаёт их платформе. На Windows это обычно IIS, на Linux — Apache 2.4.
- 🗄️ Информационная база. В клиент-серверном варианте модуль веб-сервера обращается к кластеру серверов 1С, в файловом — сам открывает каталог базы.
Вся тяжёлая работа — проведение документов, запросы, формирование отчётов — идёт на сервере. Браузер получает уже готовые данные для формы. Поэтому веб-клиенту не нужен мощный компьютер, но нужна стабильная связь с веб-сервером.
Что именно лежит в публикации
Публикация — это каталог на веб-сервере с файлом default.vrd. В нём записано, к какой базе подключаться и какие сервисы открыты. Плюс в конфигурацию веб-сервера добавляется блок, который связывает адрес /base с этим каталогом и модулем 1С.
<?xml version="1.0" encoding="UTF-8"?>
<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="/base"
ib="Srvr="srv1c";Ref="base";">
</point>
Строка ib — это та же строка соединения, что и в списке баз. Для файловой базы там будет File="путь к каталогу";.
Веб-клиент, тонкий и толстый клиент: в чём разница
Все три клиента работают с одной и той же базой. Разница — в том, что нужно поставить на компьютер и какие формы поддерживаются.
| Параметр | Толстый клиент | Тонкий клиент | Веб-клиент |
|---|---|---|---|
| Установка на компьютер | Полная платформа | Платформа (тонкий клиент) | Не нужна, только браузер |
| Формы | Обычные и управляемые | Только управляемые | Только управляемые |
| Подключение | Файл или сервер 1С | Файл, сервер 1С, HTTP | Только HTTP/HTTPS через веб-сервер |
| Где выполняется код | Значительная часть на клиенте | Клиентский код на клиенте, основная работа на сервере | Клиентский код в браузере, основная работа на сервере |
| Требования к компьютеру | Самые высокие | Средние | Минимальные |
| Работа с файлами и оборудованием | Полная | Полная | Через расширения браузера, с ограничениями |
| Скорость интерфейса | Высокая в локальной сети | Высокая | Чуть ниже, зависит от браузера и канала |
Отсюда практический вывод. Если конфигурация на обычных формах — например, старые редакции «Бухгалтерии» 2.0 или «Управления торговлей» 10.3 — веб-клиент с ней не заработает. Современные типовые решения (Бухгалтерия предприятия 3.0, ЗУП 3.1, Управление торговлей 11) построены на управляемых формах и в браузере открываются.
💡 Тонкий клиент тоже умеет подключаться к опубликованной базе по HTTP. Один и тот же адрес публикации обслуживает и браузеры, и тонкие клиенты сотрудников, которым удобнее отдельное окно программы.
Чем веб-клиент 1С полезен бизнесу
Веб-клиент закрывает задачи, где ставить платформу на каждый компьютер неудобно или невозможно.
- 🏠 Удалённые сотрудники и филиалы. Бухгалтер на удалёнке открывает базу из дома по ссылке. Не нужно настраивать RDP и выделять ему место на терминальном сервере.
- 💻 Любая операционная система. Пользователю на macOS или Linux достаточно браузера. Отдельная сборка платформы под его систему не требуется.
- 🔄 Нет обновлений на рабочих местах. Когда администратор обновляет платформу на сервере, веб-клиент сразу работает в новой версии. Тонкий клиент пришлось бы обновлять на каждом компьютере, если он не скачивается с сервера автоматически.
- 🤝 Временный доступ. Аудитору, внешнему консультанту или новому сотруднику можно выдать логин и адрес, а через месяц просто отключить пользователя в базе.
- 📉 Слабые компьютеры. Нагрузка на рабочее место минимальная, расчёты идут на сервере.
Лицензирование при этом не меняется. Каждый сеанс веб-клиента занимает клиентскую лицензию так же, как сеанс тонкого клиента . Отдельной лицензии на модуль веб-сервера покупать не нужно.
Ограничения веб-клиента и технические нюансы
Браузер — более строгая среда, чем установленная программа. Это даёт несколько ограничений, о которых лучше знать заранее.
Обычные формы и старые конфигурации
Веб-клиент поддерживает только режим управляемого приложения. Конфигурацию на обычных формах в браузере не открыть, никакие настройки публикации это не исправят.
Модальные окна
Браузеры плохо работают с модальными окнами, поэтому в конфигурации есть свойство Режим использования модальности. Оно появилось в платформе 8.3.3. В типовых конфигурациях, которые разрабатывались под веб-клиент, модальность уже не используется. В самописных базах на старом коде браузер может выдавать ошибки при открытии диалогов — это повод для доработки конфигурации, а не для настройки браузера.
Файлы, торговое оборудование, электронная подпись
Чтобы загрузить выписку из банка , сохранить файл на диск или подписать документ, веб-клиенту нужны расширения браузера: расширение для работы с файлами и расширение для работы с криптографией. Платформа сама предлагает их установить при первом обращении к такой функции.
Внешние компоненты, например драйверы фискальных регистраторов или сканеров штрихкодов, должны поддерживать работу в веб-клиенте. Многие драйверы оборудования рассчитаны на тонкий клиент, поэтому для кассы и склада обычно оставляют тонкий клиент.
Браузер и всплывающие окна
Работу проверяйте в актуальных версиях браузеров на движке Chromium (Chrome, Edge, Яндекс Браузер), а также Firefox и Safari. Если окна программы не открываются, проверьте, не блокирует ли браузер всплывающие окна для адреса публикации.
Как опубликовать базу 1С для работы через веб-клиент
Перед публикацией убедитесь, что на сервере стоит платформа с компонентом «Модули расширения веб-сервера». Его выбирают в списке компонентов при установке 1С:Предприятия. Без него в Конфигураторе не будет доступна публикация, а на Linux не будет файла модуля.
Публикация из Конфигуратора (Windows, IIS или Apache)
- Установите и запустите веб-сервер. Для IIS включите в компонентах Windows поддержку расширений ISAPI.
- Запустите Конфигуратор от имени администратора — иначе он не сможет изменить настройки веб-сервера.
- Откройте базу и выберите
Администрирование → Публикация на веб-сервере. - Укажите имя публикации (оно станет частью адреса, например
base), тип веб-сервера и каталог публикации. - Оставьте флажок
Публиковать доступ для клиентских приложений. Остальные флажки (OData, веб-сервисы, HTTP-сервисы) включайте, только если они вам нужны. - Нажмите
Опубликоватьи согласитесь на перезапуск веб-сервера. - Откройте в браузере
http://имя-сервера/base/и войдите под пользователем базы.
⚠️ На IIS частая проблема — несовпадение разрядности. Если установлена 32-разрядная платформа, в пуле приложений надо разрешить 32-разрядные приложения. Если 64-разрядная — этот параметр должен быть выключен.
Публикация через webinst (Linux, Apache)
На Linux Конфигуратор обычно не используют. Публикацию делают утилитой webinst из каталога платформы:
cd /opt/1cv8/x86_64/8.3.XX.XXXX/
sudo ./webinst -publish -apache24 -wsdir base -dir /var/www/base \
-connstr "Srvr=srv1c;Ref=base;" -confPath /etc/apache2/apache2.conf
sudo systemctl restart apache2
Вместо 8.3.XX.XXXX подставьте номер установленной платформы. Для файловой базы строка соединения выглядит как -connstr "File=/srv/1c/base;". Удалить публикацию можно той же утилитой с ключом -delete.
Утилита добавит в apache2.conf строку загрузки модуля и блок публикации примерно такого вида:
LoadModule _1cws_module "/opt/1cv8/x86_64/8.3.XX.XXXX/wsap24.so"
# 1c publication
Alias "/base" "/var/www/base/"
<Directory "/var/www/base/">
AllowOverride All
Options None
Require all granted
SetHandler 1c-application
ManagedApplicationDescriptor "/var/www/base/default.vrd"
</Directory>
После обновления платформы путь к wsap24.so в строке LoadModule меняется — его нужно поправить вручную или переопубликовать базу. Иначе Apache будет грузить модуль старой версии, и подключение завершится ошибкой несовпадения версий клиента и сервера.
Проверка статуса публикации на Linux: команды администратора
Когда пользователь пишет «1С в браузере не открывается», удобно пройти проверку по порядку — от веб-сервера к базе.
# 1. Синтаксис конфигурации Apache
sudo apache2ctl -t
# 2. Загружен ли модуль 1С
sudo apache2ctl -M | grep 1cws
# 3. Какая версия модуля подключена и есть ли блок публикации
grep -n "_1cws_module\|ManagedApplicationDescriptor" /etc/apache2/apache2.conf
# 4. Состояние службы веб-сервера и последние ошибки
systemctl status apache2 --no-pager
sudo tail -n 50 /var/log/apache2/error.log
# 5. Отвечает ли публикация (ждём код 200 или 401, а не 404/500)
curl -s -o /dev/null -w "%{http_code}\n" http://localhost/base/
# 6. Доступен ли агент сервера 1С с веб-сервера (клиент-серверная база)
nc -zv srv1c 1540
Как читать результат:
- ❌
apache2ctl -Mне показывает_1cws_module— модуль не загружен. Проверьте путь вLoadModuleи наличие файлаwsap24.so. - ❌
curlвозвращает 404 — не совпадает имя публикации или нет блокаAlias. - ❌ Код 500 и ошибка в
error.log— смотрите текст ошибки. Чаще всего это недоступный сервер 1С, неверная строка соединения или нехватка прав. - ❌
ncне может подключиться к порту 1540 — веб-сервер не видит агент кластера. Проверьте брандмауэр между серверами. Для работы нужны также порт менеджера кластера (1541) и диапазон портов рабочих процессов, который задан в свойствах рабочего сервера.
💡 Для файловой базы пользователь, от которого работает Apache (в Debian и Ubuntu это www-data), должен иметь права на чтение и запись в каталог базы. Без этого браузер покажет ошибку доступа к информационной базе, хотя публикация настроена верно.
Скорость и безопасность веб-доступа к 1С
Как ускорить работу
- ⚡ Используйте клиент-серверный вариант. Файловая база через веб-сервер подходит для 2–5 пользователей. При большем числе сеансов начинаются блокировки и замедление.
- 📡 Следите за задержкой канала. Каждое обращение формы к серверу — это сетевой запрос. Пинг в 100 мс ощущается сильнее, чем низкая скорость канала.
- 🧹 Обновляйте браузер и чистите кэш после обновления платформы на сервере. Старые закэшированные скрипты могут давать странное поведение интерфейса.
- 🖥️ Не экономьте на веб-сервере. Модуль 1С держит соединения всех пользователей. Для 20–30 сеансов выделите веб-серверу хотя бы 2 ядра и 4 ГБ памяти, отдельно от сервера СУБД.
Как защитить публикацию
Публикация в интернет — это открытая дверь в учётную базу. Минимальный набор мер:
- Только HTTPS. Подключите сертификат на веб-сервере (на Linux удобно бесплатный от Let’s Encrypt). Пароли пользователей 1С по HTTP идут открытым текстом.
- У каждого пользователя базы есть пароль. Пустой пароль у администратора — самая частая дыра.
- Публикуйте только нужное. Не включайте OData и веб-сервисы, если ими никто не пользуется.
- Ограничьте доступ на уровне сети. Например, пустите к публикации только через VPN или разрешите конкретные IP-адреса директивой
Require ipв Apache. - Смотрите журнал регистрации. Неудачные попытки входа видны в журнале базы, а частые запросы с одного адреса — в логе веб-сервера.
Частые ошибки при запуске веб-клиента
- 🔁 Обновили платформу, забыли про веб-сервер. Модуль старой версии обращается к кластеру новой — пользователи видят ошибку несовпадения версий. Лечится правкой пути к модулю или переопубликацией.
- 🔒 Конфигуратор запущен без прав администратора. Публикация «прошла», но файлы и настройки веб-сервера не изменились.
- 📁 Нет прав у пользователя веб-сервера на каталог файловой базы —
IUSRили пользователь пула в IIS,www-dataв Apache. - 🧩 Ждут обычные формы в браузере. Старую конфигурацию не открыть через веб-клиент, нужен переход на управляемое приложение или тонкий клиент через RDP.
- ⚠️ Перезапуск веб-сервера в рабочее время. Перезапуск Apache или IIS обрывает все сеансы веб-клиентов — несохранённые данные в формах пропадут. Делайте это вне рабочего времени или предупредите пользователей.