При развертывании веб-доступа к базам данных 1С (через IIS или Apache) у системных администраторов часто возникает вопрос: обязательно ли ставить полную платформу 1С на ту же машину, где запущен веб-сервер, или достаточно скопировать модуль расширения (библиотеку wsisapi.dll или wsap24.dll / wsap24.so), либо указать к ней сетевой путь?
Разберем детально технические требования платформы 1С, выясним зависимости модулей веб-расширения и рассмотрим правильные варианты настройки.
Модули расширения веб-сервера (например, wsisapi.dll для Microsoft IIS или wsap24.dll для Apache в среде Windows, а также wsap24.so в Linux) не являются автономными исполняемыми файлами. Они жестко зависят от базовых библиотек ядра платформы 1С:Предприятие (таких как core83.dll, wstrsrv.dll и ряда других), а также от системных компонентов среды выполнения (библиотек Microsoft Visual C++ Redistributable).
Если скопировать изолированную библиотеку на веб-сервер без системного окружения платформы, веб-сервер не сможет ее инициализировать и вернет системную ошибку загрузки динамической библиотеки (ошибка с кодом 126 / Module not found). Поэтому библиотеки платформы обязательно должны присутствовать в операционной системе веб-сервера.
Разберем состав компонентов, которые действительно необходимо установить на хост с веб-сервером. Разворачивать полноценный сервер 1С (службу ragent) и тем более сервер СУБД на веб-сервере не требуется.
Рассмотрим минимальные требования по установке в зависимости от используемой операционной системы:
bin, не создавая системных служб кластера серверов 1С.1c-enterprise83-common (общие разделяемые библиотеки) и 1c-enterprise83-ws (модули расширения веб-серверов). Запускать службу сервера 1С srv1cv83 на этой машине не нужно.Проанализируем топологию распределенной инфраструктуры. Веб-сервер и кластер серверов 1С могут и часто должны располагаться на разных физических или виртуальных машинах (например, веб-сервер выносится в демилитаризованную зону DMZ, а кластер 1С и СУБД находятся во внутреннем защищенном контуре).
В зависимости от типа информационной базы взаимодействие устроено следующим образом:
default.vrd, в котором прописывается сетевой адрес и порт кластера серверов 1С (параметр ib="...").1Cv8.1CD на чтение и запись, а пользователю, от имени которого работает веб-сервер, должны быть доступны клиентские лицензии 1С.Попытка не устанавливать платформу на веб-сервер, а указать в конфигурации веб-сервера сетевой путь вида \\server1c\1c_bin\wsisapi.dll на практике не рекомендуется по следующим причинам:
IIS_IUSRS, IUSR или NETWORK SERVICE в Windows) по умолчанию не имеют прав на доступ к удаленным сетевым каталогам сторонних серверов.Общепринятым и стабильным стандартом является локальная установка компонентов расширения веб-сервера непосредственно на хост веб-сервера.
При настройке веб-сервера обратим внимание на два критически важных момента:
Enable 32-Bit Applications = True).webinst: для автоматического создания дескриптора default.vrd и конфигурирования веб-сервера используется консольная утилита платформы webinst, находящаяся в каталоге bin платформы 1С.