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

· 9 мин

Содержание

Чтобы подключиться к веб-базе 1С, нужен адрес публикации вида http://сервер/имя_базы. Его открывают в браузере (веб-клиент) или добавляют в список баз тонкого клиента: Добавить → Добавление в список существующей информационной базы → На веб-сервере. Если адреса ещё нет, базу сначала публикуют на веб-сервере из Конфигуратора.

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

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

Между пользователем и базой появляется посредник — веб-сервер (Apache или IIS). На нём установлен модуль расширения веб-сервера 1С. Модуль принимает HTTP-запросы и передаёт их платформе, а та работает с базой.

Схема выглядит так:

  • 🌐 Клиент — браузер или тонкий клиент 1С (1cv8c.exe) на компьютере пользователя.
  • 🖥️ Веб-сервер — Apache 2.4 или IIS с модулем 1С и файлом публикации default.vrd.
  • 🗄️ База — файловая (папка с 1Cv8.1CD) или клиент-серверная на сервере 1С.

Клиенту не нужен доступ к папке базы или к портам кластера 1С (1540, 1541 и диапазон рабочих процессов). Достаточно открыть 80 или 443 порт веб-сервера. Поэтому веб-публикацию и выбирают для удалённых сотрудников и филиалов.

Веб-клиент или тонкий клиент

СпособЧто нужно у пользователяКогда выбирать
Браузер (веб-клиент)Только поддерживаемый браузерРазовый доступ, Mac или Linux без установки платформы, чужой компьютер
Тонкий клиент через веб-серверУстановленный тонкий клиент 1С той же версии, что на сервереПостоянная работа, печать, работа с файлами и торговым оборудованием

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

Лицензии веб-доступ не экономит. Каждый сеанс веб-клиента или тонкого клиента через веб-сервер занимает клиентскую лицензию так же, как обычный запуск.

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

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

Подготовка сервера

  1. Установите платформу 1С на веб-сервер и в установщике отметьте компонент «Модули расширения веб-сервера». Разрядность модуля должна совпадать с разрядностью веб-сервера: 64-битный Apache работает только с 64-битной платформой.
  2. Поставьте веб-сервер:
    • Apache 2.4 — установите как службу Windows или пакетом в Linux.
    • IIS — в Диспетчер серверов → Добавить роли и компоненты → Веб-сервер (IIS) включите компоненты «Расширения ISAPI» и «Фильтры ISAPI» из группы «Разработка приложений».
  3. Для IIS и 32-разрядной платформы в дополнительных параметрах пула приложений включите «Разрешить 32-разрядные приложения».
  4. Для файловой базы дайте учётной записи веб-сервера права на изменение папки базы. У IIS это группа IIS_IUSRS, у Apache — пользователь, от которого запущена служба.

Публикация из Конфигуратора (Windows)

  1. Запустите Конфигуратор от имени администратора — без этого публикация не сможет записать файлы в каталог веб-сервера и его настройки.
  2. Откройте Администрирование → Публикация на веб-сервере.
  3. Укажите Имя — латиницей, без пробелов, например buh. Оно станет частью адреса.
  4. Выберите Веб-сервер (Apache 2.4 или IIS) и Каталог, куда положить файлы публикации.
  5. Отметьте нужное: публиковать доступ для тонкого клиента и веб-клиента, HTTP-сервисы, веб-сервисы, OData.
  6. Нажмите Опубликовать. Для Apache согласитесь на перезапуск службы.

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

После публикации в каталоге появится файл default.vrd. В нём записаны строка соединения с базой и параметры публикации. Для Apache в httpd.conf добавятся строки загрузки модуля wsap24 и блок Alias с вашим именем.

Публикация в Linux

В Linux Конфигуратор с Apache работает не всегда удобно, и публикацию делают утилитой webinst из каталога платформы:

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

Подставьте свой номер версии платформы в путь, имя сервера 1С и имя базы в кластере. Для файловой базы строка соединения выглядит как File=/home/usr1cv8/bases/buh;.

После обновления платформы

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

Порядок после обновления:

  1. Установите новую версию платформы вместе с модулями расширения веб-сервера.
  2. Повторите публикацию из Конфигуратора новой версии с тем же именем и каталогом. Конфигуратор перезапишет путь к модулю.
  3. Перезапустите веб-сервер в нерабочее время.
  4. Обновите тонкий клиент у пользователей до той же версии.

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

Адрес и строка подключения к веб-базе

Адрес публикации собирается из трёх частей: протокол, имя или IP веб-сервера, имя публикации.

http://192.168.1.10/buh
https://1c.firma.ru/buh

Подключение через браузер

Введите адрес в адресную строку. Платформа откроет веб-клиент и попросит логин и пароль пользователя 1С. Язык интерфейса можно задать в адресе: https://1c.firma.ru/buh/ru_RU/.

Разрешите сайту всплывающие окна. Веб-клиент открывает формы в отдельных окнах, и блокировщик браузера их режет.

Подключение тонким клиентом

  1. Запустите 1С, в окне выбора баз нажмите Добавить.
  2. Выберите «Добавление в список существующей информационной базы».
  3. Введите название для списка, например «Бухгалтерия (через интернет )».
  4. Тип расположения — «На веб-сервере», в поле адреса вставьте адрес публикации.
  5. При необходимости заполните параметры прокси и сертификатов (о них ниже) и нажмите Готово.

Строка в ibases.v8i и командная строка

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

[Бухгалтерия через интернет]
Connect=ws="https://1c.firma.ru/buh";
App=ThinClient

Тот же адрес передают тонкому клиенту в ярлыке:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /WS"https://1c.firma.ru/buh"

Сравните с другими типами строки соединения, чтобы не перепутать:

Тип базыСтрока в ibases.v8i
Файловая на дискеConnect=File="D:\Bases\Buh";
На сервере 1СConnect=Srvr="srv1c";Ref="buh";
На веб-сервереConnect=ws="https://1c.firma.ru/buh";

Параметры запуска, вход и HTTPS

Логин и пароль

Веб-публикация не заменяет пользователей 1С. Вход идёт по тем же учётным записям, что в Администрирование → Настройки пользователей и прав → Пользователи. Если у пользователя не задан пароль, через интернет в базу сможет войти любой, кто знает имя.

Логин и пароль можно передать прямо в адресе или в ярлыке (ключи /N и /P тонкого клиента). Делайте так только для внутренней сети: пароль окажется в истории браузера и в файлах ярлыков.

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

Почему без HTTPS выходить в интернет нельзя

По HTTP логины, пароли и данные базы идут открытым текстом. Публиковать так базу наружу недопустимо.

Порядок для HTTPS:

  1. Получите сертификат на доменное имя: бесплатный Let’s Encrypt или купленный.
  2. Настройте на веб-сервере привязку к порту 443 с этим сертификатом и перенаправление с HTTP на HTTPS.
  3. В адресе базы у пользователей укажите https://.
  4. Если сертификат самоподписанный, установите его на компьютеры пользователей в хранилище доверенных корневых центров сертификации. Иначе тонкий клиент откажется подключаться.

Что ещё ограничить

  • 🔒 Публикуйте наружу только то, что нужно. HTTP-сервисы, OData и веб-сервисы снимайте с публикации, если ими никто не пользуется.
  • 🔒 Ограничьте доступ к адресу по IP на межсетевом экране, если сотрудники работают из известных мест.
  • 🔒 Не публикуйте под очевидным именем вроде base или 1c — это первое, что проверяют сканеры.
  • 🔒 Пользователю с ролью «Полные права» задайте длинный пароль.

Ошибки при подключении к веб-базе

Большинство отказов видно по коду ответа в браузере. Начните диагностику с того, что открывается в браузере на самом веб-сервере по адресу http://localhost/buh.

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

Если не помогло

Посмотрите журнал ошибок веб-сервера: у Apache это error.log в каталоге logs, у IIS — журнал событий Windows и логи сайта. Сообщение там обычно точнее, чем в браузере.

Второй шаг — проверить ту же базу без веб-сервера. Если она не открывается и напрямую, проблема в самой базе или кластере, а не в публикации.

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

Через интернет 1С работает медленнее, чем в локальной сети. Каждое открытие формы — это обмен запросами с сервером, и задержка канала важнее его ширины.

Что реально помогает:

  1. Тонкий клиент вместо браузера. Он кэширует метаданные и формы, поэтому повторные открытия быстрее.
  2. Режим низкой скорости соединения. В параметрах базы в окне запуска выберите скорость соединения «Низкая». Клиент реже обращается к серверу и уменьшает объём передаваемых данных.
  3. Клиент-серверный вариант вместо файловой базы. Файловую базу публиковать можно, но при нескольких одновременных пользователях начинаются блокировки и замедления. От 5–10 человек через веб стоит переходить на сервер 1С.
  4. Веб-сервер рядом с базой. Веб-сервер и сервер 1С ставят в одной сети: медленный участок должен быть только между пользователем и веб-сервером.
  5. Свежая платформа. Новые версии улучшают работу веб-клиента, поэтому держите платформу на сервере в актуальном состоянии и обновляйте публикацию после её смены.

Если тормозит только один пользователь, сначала проверьте его канал: пинг до сервера больше 100 мс заметно замедляет открытие форм независимо от настроек 1С.

Когда веб-публикация не лучший выбор

Для 20–30 одновременных пользователей с тяжёлыми отчётами и печатью иногда удобнее терминальный сервер (RDP или RemoteApp). Там клиент 1С работает рядом с базой, а по сети идёт только картинка экрана. Веб-публикация выигрывает простотой: не нужны терминальные лицензии Windows, а сотрудник подключается из браузера.

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

Можно ли подключиться к веб-базе 1С с телефона?
Да. Подходит мобильный клиент 1С, в который добавляют тот же адрес публикации. В мобильном браузере работать можно, но неудобно.
Нужен ли белый IP для веб-доступа к 1С?
Для доступа из интернета нужен внешний адрес у веб-сервера или проброс порта 443 на роутере. Без белого IP подключаются через VPN к офисной сети.
Работает ли 1С через браузер на Mac?
Да, веб-клиент поддерживает Safari и другие современные браузеры на macOS. Платформу устанавливать не нужно.
Можно ли опубликовать базу на бесплатном веб-сервере?
Да, Apache бесплатен и поддерживается модулем 1С. IIS входит в Windows Server и отдельной оплаты не требует.
Сколько лицензий нужно для работы через веб?
По одной клиентской лицензии на каждый одновременный сеанс. Для клиент-серверной базы дополнительно нужна лицензия на сервер 1С.