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

· 9 мин

Содержание

Чтобы открыть 1С в браузере, базу сначала публикуют на веб-сервере (IIS или Apache) с установленным модулем расширения 1С. После этого пользователь вводит в браузере адрес вида http://имя-сервера/buh/ и попадает в окно авторизации 1С. Отдельно ставить платформу на рабочее место не нужно.

Частое заблуждение — что достаточно «расшарить» папку с базой или открыть порт 1541, и браузер сам подхватит 1С. Нет: браузер умеет говорить только по HTTP/HTTPS. Посредником между ним и базой всегда работает веб-сервер с модулем 1С. Без этой связки ссылки на базу просто не существует.

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

Веб-клиент — это тот же интерфейс 1С:Предприятия, только собранный из JavaScript и HTML. Его код хранится в платформе на сервере и отдаётся браузеру при первом входе.

Цепочка выглядит так:

  1. 🌐 Браузер отправляет запрос на веб-сервер по адресу публикации.
  2. 🧩 Веб-сервер передаёт запрос модулю расширения 1С: wsisapi.dll для IIS, wsap24.dll для Apache 2.4 в Windows, wsap24.so в Linux.
  3. 🗄️ Модуль по строке соединения из файла default.vrd открывает базу: файловую напрямую или клиент-серверную через агент кластера (порт 1540).
  4. 📄 Ответ уходит обратно в браузер.

Отсюда три практических вывода:

  • Платформа нужна на веб-сервере. Модуль работает только вместе с установленной платформой той же версии и той же разрядности, что и веб-сервер.
  • Версия клиента совпадает с сервером автоматически. Веб-клиент загружается с сервера, поэтому проблема «версия клиента не совпадает с версией сервера» у браузерных пользователей не возникает.
  • Лицензии расходуются как обычно. Каждый сеанс веб-клиента занимает клиентскую лицензию так же, как сеанс тонкого клиента .

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

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

Перед настройкой проверьте окружение. Большая часть ошибок публикации возникает именно здесь, а не в 1С.

Что нужноДля IIS (Windows)Для Apache (Windows/Linux)
Веб-серверРоль «Веб-сервер (IIS)» в Windows Server 2016 и новееApache 2.4
Модуль 1Сwsisapi.dllwsap24.dll / wsap24.so
Компонент платформы«Модули расширения веб-сервера»то же; в Linux — пакет веб-сервера 1С
Разрядность64-битный IIS → 64-битная платформаразрядность Apache = разрядность платформы
ПраваIIS_IUSRS на каталог платформы и каталог базыпользователь Apache (www-data, apache) на каталог базы

Для IIS при добавлении роли включите в разделе разработки приложений компоненты «Расширения ISAPI» и «Фильтры ISAPI». Также нужна консоль управления IIS. Без расширений ISAPI модуль 1С не загрузится, а браузер получит ошибку 404 или 500.

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

Установка модуля расширения веб-сервера

В Windows

  1. Запустите установщик платформы той версии, на которой работает база.
  2. На шаге выбора компонентов включите «Модули расширения веб-сервера». Ставить «Сервер 1С:Предприятия» на этот компьютер не обязательно, если кластер работает на другой машине.
  3. Если планируется публикация из Конфигуратора, выберите и «1С:Предприятие» — он понадобится для запуска Конфигуратора.
  4. Убедитесь, что разрядность совпадает с веб-сервером. IIS на Windows Server по умолчанию 64-битный, значит, нужен 64-битный дистрибутив платформы.

В Linux

Модуль входит в пакет веб-сервера из дистрибутива платформы. После установки файл wsap24.so лежит в каталоге платформы, например /opt/1cv8/x86_64/<версия>/. Публикацию в Linux делают утилитой webinst из того же каталога.

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

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

Есть два способа: через Конфигуратор (удобно в Windows) и утилитой webinst (подходит для Linux и для скриптов).

Способ 1. Через Конфигуратор

  1. Запустите 1С от имени администратора Windows: без этого записать файлы в C:\inetpub\wwwroot и изменить настройки IIS не получится.
  2. Откройте базу в режиме Конфигуратора.
  3. Выберите Администрирование → Публикация на веб-сервере.
  4. Укажите имя публикации латиницей, например buh. Это будет часть адреса.
  5. Выберите веб-сервер: Internet Information Services или Apache 2.4. Для Apache укажите путь к его каталогу.
  6. Каталог публикации по умолчанию создаётся в C:\inetpub\wwwroot\buh — его можно оставить.
  7. Флажок публикации доступа для клиентских приложений оставьте включённым — именно он отвечает за вход через браузер.
  8. Снимите флажки OData и веб-сервисов, если они не нужны: лишние точки входа незачем открывать.
  9. Нажмите Опубликовать. Для Apache после этого перезапустите службу.

Способ 2. Утилитой webinst

Утилита лежит в каталоге bin платформы. Пример для клиент-серверной базы и Apache в Linux:

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

Пример для IIS в Windows:

cd "C:\Program Files\1cv8\8.3.25.1374\bin"
webinst -publish -iis -wsdir buh -dir "C:\inetpub\wwwroot\buh" -connstr "Srvr=srv1c;Ref=buh;"

Здесь -wsdir — имя в адресе, -dir — физический каталог, -connstr — строка соединения с базой. Номер версии в пути замените на свой. Для удаления публикации используется ключ -delete.

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

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

<?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="/buh"
       ib="Srvr=&quot;srv1c&quot;;Ref=&quot;buh&quot;;">
</point>

Для Apache в конфигурационный файл добавляются строка LoadModule _1cws_module с путём к модулю и блок Alias с описанием каталога. В IIS создаётся приложение с сопоставлением обработчика на wsisapi.dll.

Если сервер 1С переехал или база переименована, не перепубликовывайте всё с нуля. Достаточно поправить атрибут ib в default.vrd и перезапустить веб-сервер.

Пул приложений IIS

Проверьте пул, в котором работает публикация:

  • 🔹 при 32-битной платформе на 64-битном IIS включите в дополнительных параметрах пула «Разрешить 32-разрядные приложения»;
  • 🔹 удостоверение пула (по умолчанию ApplicationPoolIdentity) должно иметь права на каталог платформы, а для файловой базы — на чтение и изменение каталога базы;
  • 🔹 после изменения прав перезапустите пул, а не только сайт.

Как открыть 1С в браузере на рабочем месте

Адрес для пользователя: http://имя-сервера/имя-публикации/, например http://srv-web/buh/. Его можно сохранить в закладки или ярлык.

Порядок первого входа:

  1. Откройте адрес в браузере. Появится окно авторизации 1С.
  2. Введите имя пользователя и пароль из списка пользователей базы.
  3. Если браузер предложит установить расширение для работы с 1С:Предприятием и файлами — согласитесь. Без него не работают загрузка и выгрузка файлов, печать в некоторых сценариях и работа с буфером обмена.
  4. Разрешите для адреса базы всплывающие окна. Веб-клиент открывает формы и отчёты в отдельных окнах, и блокировщик их «съедает».

Поддерживаются актуальные версии Chrome, Firefox, Edge, «Яндекс Браузера» и Safari в macOS. Точный список для вашей версии платформы смотрите в документации к ней.

Чтобы браузер открывал базу сразу на русском языке, используйте адрес с локалью: http://srv-web/buh/ru_RU/.

Где веб-клиент проигрывает тонкому клиенту:

  • 📉 тяжёлые отчёты и большие списки открываются медленнее;
  • 🖨️ печать идёт через диалог браузера, а не напрямую на принтер;
  • 🔌 внешние компоненты и торговое оборудование работают только если поддерживают веб-клиент;
  • 🧰 Конфигуратор в браузере недоступен — администрирование базы остаётся в обычном клиенте.

Доступ из интернета и защита соединения

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

Что сделать

  1. Получите сертификат на доменное имя, например 1c.company.ru. Подойдёт бесплатный Let’s Encrypt или сертификат от удостоверяющего центра.
  2. IIS: в привязках сайта добавьте тип https, порт 443 и выберите сертификат.
  3. Apache: включите mod_ssl, пропишите пути к сертификату и ключу в виртуальном хосте для порта 443.
  4. Настройте переадресацию с HTTP на HTTPS, чтобы пароли не уходили открытым текстом.
  5. Пробросьте на маршрутизаторе только порт 443 к веб-серверу.

Не открывайте наружу порты сервера 1С (1540, 1541, 1560–1591) и порт файлового доступа. Из интернета должен быть виден только веб-сервер. Сервер 1С и каталог базы остаются во внутренней сети.

Минимальные правила безопасности

  • 🔐 У всех пользователей базы есть пароли, у администратора — сложный.
  • 🚫 В списке пользователей нет записи без пароля с полными правами: из интернета её подберут первой.
  • 🧾 Ненужные OData и веб-сервисы не опубликованы.
  • 🔄 Платформа и веб-сервер обновляются, старые версии модулей удалены после перепубликации.
  • 👁️ Журнал веб-сервера просматривается хотя бы раз в неделю на предмет перебора паролей.

Для входа по учётной записи Windows в базе включают аутентификацию операционной системы у пользователя, а в IIS — проверку подлинности Windows для приложения публикации. Это удобно в домене, но для доступа из интернета чаще оставляют пароль 1С поверх HTTPS.

Почему 1С не открывается в браузере

Большинство сбоев видно по коду ответа в браузере или по поведению окна входа. Выберите свой симптом.

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

Если ошибка не похожа ни на одну из перечисленных, откройте журнал: в IIS — журнал событий Windows и логи сайта в C:\inetpub\logs\LogFiles, в Apache — error.log. Модуль 1С пишет туда причину отказа, и по тексту её обычно видно сразу.

Перезапуск пула IIS или службы Apache обрывает сеансы всех пользователей веб-клиента. Несохранённые документы пропадут. Делайте это вне рабочего времени или предупредите людей заранее.

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

Можно ли открыть 1С в браузере без веб-сервера?
Нет. Браузер работает только по HTTP, поэтому между ним и базой обязательно стоит IIS или Apache с модулем расширения 1С. Альтернатива без веб-сервера — облачный сервис, где публикацию уже настроил провайдер.
Подойдёт ли файловая база для работы через браузер?
Подойдёт для 3–5 одновременных пользователей. Веб-сервер должен стоять на том же компьютере или иметь права на сетевой каталог базы. При большем числе пользователей переходите на клиент-серверный вариант.
Нужна ли отдельная лицензия на веб-клиент?
Отдельного вида лицензии нет. Сеанс в браузере занимает обычную клиентскую лицензию, как и тонкий клиент. Лицензия на сервер 1С нужна только для клиент-серверной базы.
Можно ли работать в 1С с телефона через браузер?
Да, веб-клиент открывается в мобильном браузере, но формы рассчитаны на большой экран. Для регулярной работы с телефона удобнее мобильный клиент 1С, который подключается к той же публикации.
Сколько стоит настроить доступ к 1С через браузер?
Сами IIS и Apache бесплатны, Let’s Encrypt тоже. Расходы — это сервер с белым IP и доменом, клиентские лицензии на нужное число сеансов и, при необходимости, работа администратора: ориентировочно несколько часов на публикацию и HTTPS.