1С через браузер без установки: публикация базы на Apache и IIS

· 10 мин

Содержание

Чтобы запустить 1С в браузере, базу нужно опубликовать на веб-сервере (Apache или IIS), а затем открыть адрес вида http://имя-сервера/buh в Chrome, Edge, Firefox, Safari или Яндекс Браузере. Публикацию делают в Конфигураторе: Администрирование → Публикация на веб-сервере (Конфигуратор запускается от имени администратора Windows) или консольной утилитой webinst. На компьютере пользователя ничего ставить не нужно: веб-клиент — это сама страница в браузере.

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

Как устроен запуск 1С через веб-сервер

В схеме три звена: браузер пользователя, веб-сервер с модулем расширения 1С и сама информационная база.

  • 🌐 Браузер загружает веб-клиент — интерфейс 1С, написанный на JavaScript. Вся бизнес-логика выполняется не в браузере, а на сервере.
  • ⚙️ Веб-сервер (Apache или IIS) принимает HTTP-запросы и передаёт их модулю расширения 1С. Модуль входит в дистрибутив платформы и называется «Модули расширения веб-сервера».
  • 🗄️ База. В файловом варианте модуль сам открывает файл 1Cv8.1CD, по сути веб-сервер становится единственным «пользователем» базы. В клиент-серверном варианте модуль подключается к серверу 1С: к агенту на порту 1540, дальше к менеджеру кластера (1541) и рабочим процессам (по умолчанию диапазон 1560–1591).

Отсюда главное правило безопасности: наружу открывают только порт веб-сервера (443, при необходимости 80). Порты сервера 1С из интернета недоступны, их видит только веб-сервер во внутренней сети.

Эту же публикацию умеет использовать и тонкий клиент. При добавлении базы в список выберите вариант подключения «На веб-сервере» и укажите тот же адрес. Тонкий клиент работает быстрее браузера и не зависит от его обновлений, поэтому для постоянных пользователей его часто выбирают как основной способ удалённой работы.

Веб-клиент или тонкий клиент через веб-сервер

КритерийВеб-клиент (браузер)Тонкий клиент по HTTP
Установка на ПКНе нужнаНужен тонкий клиент той же версии платформы
Работа с macOS, LinuxЛюбой поддерживаемый браузерЕсть сборки под эти ОС
Скорость интерфейсаНиже, зависит от браузераВыше
Торговое оборудование, расширения ОСОграниченоПолноценно
Когда выбиратьРазовые входы, внешние сотрудники, руководитель с планшетаЕжедневная работа бухгалтера из дома

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

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

Проверьте до начала работ:

  1. ✅ Версия платформы. Модуль веб-сервера должен быть той же версии, что и сервер 1С (для клиент-серверной базы) и тонкие клиенты, которые будут подключаться по HTTP. Номера сборок должны совпадать полностью, например 8.3.25.1445 и 8.3.25.1445.
  2. ✅ Разрядность. Модуль ставится из дистрибутива той же разрядности, что и веб-сервер. 64-битный Apache работает только с 64-битным модулем.
  3. ✅ Операционная система. Windows Server 2016 и новее (IIS или Apache) либо Linux (Apache). На Linux модуль — файл wsap24.so в каталоге платформы, например /opt/1cv8/x86_64/8.3.25.1445/.
  4. ✅ Лицензии. Веб-клиент расходует клиентскую лицензию, как и обычный клиент. Для файловой базы лицензия ищется на компьютере веб-сервера, для клиент-серверной — на сервере 1С. Ключ на компьютере пользователя роли не играет.
  5. ✅ Доменное имя и сертификат, если доступ нужен из интернета. Об этом в разделе про HTTPS.

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

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

Сначала ставится веб-сервер, потом в установщике платформы 1С отмечается компонента «Модули расширения веб-сервера». Если платформа уже установлена, запустите setup.exe из того же дистрибутива, выберите «Изменить» и добавьте компоненту.

Вариант 1. Apache 2.4 на Windows

  1. Скачайте сборку Apache 2.4 для Windows нужной разрядности и распакуйте, например, в C:\Apache24.
  2. Проверьте в conf\httpd.conf строку Define SRVROOT "C:/Apache24" и порт Listen 80.
  3. Установите службу из командной строки администратора:
cd C:\Apache24\bin
httpd.exe -k install
httpd.exe -k start
  1. Откройте http://localhost на сервере. Должна появиться стартовая страница Apache «It works!».

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

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

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

Для 64-битной платформы пул приложений должен работать в 64-битном режиме. В свойствах пула (дополнительные параметры) параметр «Разрешить 32-разрядные приложения» оставьте False. Если ставите 32-битную платформу, наоборот, True.

Вариант 3. Apache на Linux

Ставится штатно из репозитория: apt install apache2 в Ubuntu и Debian. Модуль 1С подключается к нему так же, как на Windows, только путь к файлу другой. Публикацию на Linux удобнее делать утилитой webinst, о ней ниже.

Публикация информационной базы

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

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

  1. Запустите 1С от имени администратора Windows (правой кнопкой по ярлыку). Иначе Конфигуратор не сможет записать изменения в httpd.conf или настройки IIS.
  2. Откройте базу в режиме Конфигуратора.
  3. Выберите Администрирование → Публикация на веб-сервере.
  4. Заполните поля:
    • Имя — часть адреса после имени сервера, латиницей без пробелов: buh, zup, ut;
    • Веб-сервер — Apache 2.4 или Internet Information Services;
    • Каталог — физическая папка публикации, например C:\Apache24\htdocs\buh или C:\inetpub\wwwroot\buh.
  5. На вкладке «Основные» оставьте отмеченной публикацию тонкого и веб-клиента.
  6. Нажмите «Опубликовать». Для Apache Конфигуратор предложит перезапустить веб-сервер — согласитесь.

Перезапуск веб-сервера разрывает сеансы всех, кто уже работает через браузер или тонкий клиент по HTTP. На действующем сервере публикуйте новые базы вечером или предупредите пользователей.

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

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

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

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

Для файловой базы строка соединения выглядит как -connstr "File=""D:\Bases\Buh"";". Полный список ключей для вашей версии показывает запуск webinst без параметров.

Что появится в httpd.conf

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

LoadModule _1cws_module "C:/Program Files/1cv8/8.3.25.1445/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.

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

Это самая частая причина того, что опубликованная база не открывается.

ЧтоКому дать праваКакие
Каталог публикации (htdocs\buh, wwwroot\buh)Учётная запись службы Apache или группа IIS_IUSRSЧтение
Каталог файловой базыТа же учётная запись (для IIS — IUSR и IIS_IUSRS)Чтение и изменение
Папка платформы binТа же учётная записьЧтение и выполнение

Для клиент-серверной базы права на файлы базы не нужны: модуль ходит к серверу 1С по сети.

Защита доступа и HTTPS-сертификат

Публикация по http:// годится только для локальной сети. Если база смотрит в интернет, пароли пользователей и данные идут открытым текстом. Минимальный набор мер:

  • 🔒 HTTPS с действующим сертификатом. Бесплатный сертификат Let’s Encrypt подходит. Тонкий клиент и браузеры ругаются на самоподписанные сертификаты, пользователи начнут нажимать «всё равно продолжить» — это плохая привычка.
  • 🔑 Пароли у всех пользователей 1С. Пользователь без пароля в опубликованной базе — открытая дверь. Проверьте список в Администрирование → Настройки пользователей и прав → Пользователи.
  • 🚫 Никаких логинов в default.vrd. В строку соединения можно вписать Usr и Pwd, и база будет открываться без запроса пароля. Для интернета так делать нельзя.
  • 🧱 Закрытые порты сервера 1С. Снаружи доступен только 443.
  • 🛡️ Ограничение по IP, если сотрудники работают из известных офисов, или VPN для остальных.

HTTPS на Apache

Подключите в httpd.conf модуль mod_ssl и файл conf/extra/httpd-ssl.conf, укажите в нём пути к сертификату и ключу:

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

# в httpd-ssl.conf
SSLCertificateFile    "C:/Apache24/conf/ssl/cert.pem"
SSLCertificateKeyFile "C:/Apache24/conf/ssl/privkey.pem"

На Linux сертификат удобно получить через certbot --apache: он сам пропишет виртуальный хост и настроит продление.

HTTPS на IIS

В диспетчере IIS импортируйте сертификат в разделе «Сертификаты сервера», затем у сайта откройте «Привязки», добавьте https на порт 443 и выберите сертификат. Привязку http после проверки можно удалить или настроить перенаправление.

Вход в 1С через браузер и работа в веб-клиенте

Откройте в браузере адрес публикации: https://1c.company.ru/buh. Появится окно авторизации 1С с выбором пользователя и паролем. После входа интерфейс почти такой же, как в тонком клиенте.

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

  • 🪟 Разрешить всплывающие окна для адреса базы. Веб-клиент открывает в них отчёты и печатные формы.
  • 📎 Установить расширение для работы с файлами, когда 1С предложит это при первой загрузке или выгрузке файла. Без него не работает часть операций с файлами, например загрузка банковской выписки из папки.
  • 🔐 Расширение для криптографии, если в базе подписывают документы ЭП. Программа сама подскажет, что установить.

Полезные мелочи:

  • ⌨️ Часть сочетаний клавиш перехватывает браузер. Ctrl+N, Ctrl+W и Ctrl+T закроют или откроют вкладку браузера, а не окно 1С.
  • 🖨️ Печать идёт через стандартный диалог браузера. Для точного вывода бланков удобнее сохранять форму в PDF.
  • 🌍 Язык интерфейса задаётся параметром в адресе: https://1c.company.ru/buh/ru_RU/.

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

Почему 1С не запускается в браузере: разбор ошибок

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

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

Где смотреть подробности

  • 📄 Журнал ошибок Apache — файл logs\error.log в папке Apache. В нём видно, какой модуль не загрузился и почему.
  • 📄 Журналы IIS — C:\inetpub\logs\LogFiles, там же подстатус ошибки (например, 500.0 или 404.3).
  • 📄 Журнал регистрации 1С — показывает, дошёл ли запрос до базы и под каким пользователем.

Если для диагностики нужно перезапустить службу Apache, IIS или сервер 1С, сначала предупредите пользователей: все открытые сеансы оборвутся, несохранённые документы пропадут. Лучше делать это в обед или после окончания рабочего дня.

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

Можно ли открыть файловую базу в браузере без веб-сервера?
Нет. Браузер работает только по HTTP, поэтому между ним и базой обязательно нужен веб-сервер с модулем 1С. Для одного пользователя его можно поставить на тот же компьютер.
Сколько пользователей выдержит веб-клиент на файловой базе?
Ограничение то же, что у файловой базы в целом: комфортно 5–10 одновременных пользователей. Если работают больше, переходите на клиент-серверный вариант.
Работает ли веб-клиент на iPad и Android?
Да, через мобильный браузер. Но интерфейс рассчитан на мышь и большой экран, для постоянной работы с планшета удобнее мобильный клиент 1С.
Нужна ли отдельная лицензия для веб-клиента?
Отдельной нет. Веб-клиент занимает обычную клиентскую лицензию, как и тонкий клиент. Ищется она на веб-сервере или на сервере 1С, а не на компьютере пользователя.
Как опубликовать несколько баз на одном сервере?
Опубликуйте каждую под своим именем: /buh, /zup, /ut. У каждой будет свой каталог и свой default.vrd, а модуль в httpd.conf подключается один раз.