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

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

3
Александр Рудницкий
Александр Рудницкий

Программист 1С компании CorpSoft24

Массовый переход на удалённые модели работы, задачи импортозамещения в области ПО и необходимость масштабировать ИТ-ресурсы бизнеса вызвали к жизни несколько новых тенденций. Так, сумма перечисленных факторов актуализировала роль удаленного веб-доступа к базам данных служб 1С.

Веяния времени

Обычно веб-сервер устанавливают на том же «железе», что и систему 1С — подобная архитектура покрывала потребности компании-пользователя этого решения.

Однако сегодня всё меняется: цифровые бизнес-модели масштабируются с ростом объемов операций, меняются модели доступа к ИТ-системам компаний, требования к их производительности и так далее.

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

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

Иллюстрация: база 1С

Для доступа достаточно иметь веб-браузер, и устройство с доступом к сети интернет.

Служба 1С — отдельно, БД — отдельно: простой принцип, обеспечивающий необходимую производительность.

В Интернете нет недостатка в инструкциях по публикации обоих элементов в единой физической локации – то есть, в рамках старой парадигмы. Это довольно просто: запускаем 1С от имени Администратора, затем в конфигураторе «Администрирование» выбираем «Публикация на веб-сервере». И, собственно, готово.

Но что делать, когда служба 1С и веб-служба должны располагаться на разных серверах?

Организовать веб-сервер для 1С можно с помощью двух решений: Internet Information Server (IIS), который включён в операционную систему Windows, а также с помощью Apache-сервера.

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

Для IIS

Для публикации базы на веб-сервере IIS необходимо сначала установить требуемые компоненты IIS и платформу 1С с компонентой «Модули расширения веб-сервера».

Иллюстрация: база 1С

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

Общие функции HTTP (Common HTTP Features)

  • статическое содержимое (Static Content);
  • документ по умолчанию (Default Document);
  • обзор каталогов (Directory Browsing);
  • ошибки HTTP (HTTP Errors).

Разработка приложений (Application Development)

  • ASP;
  • ASP.NET. 3.5;
  • Расширения ISAPI (ISAPI Extensions);
  • Расширяемость .NET 3.5 (.NET Extensibility 3.5);
  • Фильтры ISAPI (ISAPI Filters).

Исправление и диагностика (Health and Diagnostics)

  • Ведение журнала HTTP (HTTP Logging);
  • Монитор запросов (Request Monitor);
  • Средства управления (Management Tools);
  • Консоль управления IIS (IIS Management Console).

После установки платформы 1С и компонентов IIS  пользователю (или группе IIS_USRS), от имени которого запущена служба веб-сервера, необходимо предоставить права на каталог с платформой 1С для возможности запуска компонентов.

Включение компонентов веб-сервера IIS в операционной системе Windows 10 выполняется достаточно просто. Для начала нужно открыть раздел «Программы и компоненты» (Programs and Features) в панели управления (Control panel). Когда откроется окно «Компоненты Windows» (Windows features) в нём необходимо проставить флажки для следующих элементов:

Службы IIS

  • Службы интернета;
  • Компоненты разработки приложений;

и далее:

  • Расширение ISAPI;
  • Фильтры ISAPI.

Средства управления веб-сайтом

  • Консоль управления IIS.

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

Настройка компонент производятся в диспетчере серверов (Server Manager). Необходимо выбрать «Управление» — «Добавить роли и компоненты» (Manage — Add Roles and Features). В Add Roles and Features нужно два раза нажать «Далее» (Next) пока мастер не переключится на страницу ролей сервера (Server Roles).

Во вкладке роли сервера (Server Roles) установите флажок Web Server IIS. Данная роль зависит от другой ([Tools] IIS Management Console), она устанавливается через «Добавить компоненты» (Add Features) в открывшемся окне.

После чего нажимаем кнопку «Далее» (Next) пока мастер не дойдёт до вкладки «Роль веб-сервера IIS» (Web Server Role IIS).На этой вкладке — «Далее» (Next) и попадете на вкладку «Служба ролей» (Role Services).

Во вкладке нужно найти пункт Application Development и выбрать в нем с помощью флажков пункты ISAPI Extensions и ISAPI Filters. После установки флажков — «Далее» (Next) и «Установить» (Install). На этом установка веб-сервера завершена.

Пример:

"C:\Program Files\1cv8\8.3.16.1224\bin\webinst.exe" -iis -wsdir base1 -dir "C:\inetpub\wwwroot\base1" -connStr "Srvr="Srv1C";Ref="base1"

Для Apache

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

Архив с сервером скачивается и разархивируется в любую удобную папку, например, C:\Apache24. В названии папки указан номер версии Apache, например Apache 2.4.

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

После разархивирования в командной строке от имени администратора (меню «Пуск» и ввод cmd) открываем приложение через пункт меню «Запустить от имени Администратора» (Run as Administrator).

В командной строке переходим в директорию распакованного Apache с помощью команды cd

cd C:\Apache24

и директории Apache вводим команду:

httpd.exe -k install

Это установит Apache, которым можно далее управлять в окне служб.

Далее нужно только опубликовать информационную базу и указать файлы сертификата в настройках Apache.

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

Синтаксис:

webinst [-publish] | -delete <веб-сервер> -wsdir <виртуальный каталог>

-dir <физический каталог>

-connstr <строка соединения>

-confpath <путь к файлу httpd.conf>

-descriptor <путь к файлу default.vrd>

[-osauth]

Пример:

"C:\Program Files\1cv8\8.3.16.1063\bin\webinst.exe" -apache24 -wsdir base2 -dir

"C:\Apache24\w\base2" -connStr "Srvr="Srv1C:2541"; Ref="base2";" -confPath

"C:\Apache24\conf\httpd.conf"

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

  • Имени сервера;
  • Имя публикации базы, указанное в окне настройки публикации.

Хинт для программистов: если зарегистрируетесь на соревнования Huawei Cup, то бесплатно получите доступ к онлайн-школе для участников. Можно прокачаться по разным навыкам и выиграть призы в самом соревновании.

Перейти к регистрации

Что думаете?