Администрирование · 10 мин
Модули расширения веб-сервера 1С: что это и как они работают
Что такое модули расширения веб-сервера 1С, зачем они нужны, какие файлы используются для Apache и IIS и как проверить корректность публикации базы.
Публикация информационной базы 1С на веб-сервере невозможна без специального компонента — модуля расширения веб-сервера. Именно он принимает HTTP-запросы от браузеров и мобильных клиентов, передаёт их платформе 1С и возвращает ответ. Без этого модуля веб-сервер (Apache или IIS) просто не знает, как обрабатывать обращения к опубликованной базе.
Модуль расширения устанавливается вместе с платформой 1С:Предприятие, если при установке отметить соответствующий компонент. Для каждого типа веб-сервера и каждой разрядности существует отдельный файл модуля, и ошибка в выборе файла — одна из самых частых причин неработающей публикации.
Разобраться в теме важно администраторам, которые настраивают доступ к базе через браузер, публикуют HTTP-сервисы, веб-сервисы или организуют работу мобильных клиентов. Ниже описано, какие модули существуют, где они лежат, как их подключить и как проверить, что всё работает.
Что такое модуль расширения веб-сервера и зачем он нужен
Веб-сервер сам по себе умеет отдавать статические файлы и выполнять скрипты, но ничего не знает о внутреннем устройстве информационной базы 1С. Модуль расширения выступает посредником: он загружается веб-сервером при старте, перехватывает запросы к определённым виртуальным каталогам и перенаправляет их в платформу 1С.
Через этот механизм работают веб-клиент (запуск базы в браузере), HTTP-сервисы, веб-сервисы (SOAP), сервисы OData и мобильные клиенты. Все они используют один и тот же канал: запрос приходит на веб-сервер, модуль расширения передаёт его платформе, платформа формирует ответ, модуль возвращает его клиенту.
Важно понимать: модуль расширения не заменяет платформу и не является отдельным приложением. Он лишь «мост», поэтому на сервере, где происходит публикация, должна быть установлена полноценная платформа 1С той же версии, что и библиотека модуля.
Какие файлы модулей существуют и где они находятся
Состав файлов зависит от веб-сервера и разрядности. Для Apache 2.4 используется библиотека wsap24.dll (Windows) или wsap24.so (Linux). Для Microsoft IIS применяется ISAPI-модуль wsisapi.dll. Существуют 32-разрядные и 64-разрядные варианты, и разрядность модуля должна совпадать с разрядностью веб-сервера, а не операционной системы.
Файлы размещаются в каталоге установки платформы. Типовой путь на Windows выглядит примерно так: C:\Program Files\1cv8\<версия>\bin\wsap24.dll. При установке платформы нужно явно отметить компонент «Модули расширения веб-сервера» — по умолчанию в некоторых сценариях установки он может быть не выбран.
| Веб-сервер | Файл модуля (Windows) | Файл модуля (Linux) | Тип подключения |
|---|---|---|---|
| Apache 2.4 | wsap24.dll | wsap24.so | Модуль Apache (LoadModule) |
| Microsoft IIS | wsisapi.dll | — | ISAPI-расширение |
Если нужного файла в каталоге bin нет, скорее всего, компонент не был установлен. Достаточно повторно запустить установщик платформы в режиме изменения и добавить модуль расширения веб-сервера.
Как выполняется публикация базы через конфигуратор
Самый простой способ подключить модуль — воспользоваться штатной публикацией из конфигуратора. Для этого конфигуратор нужно запустить с правами администратора, иначе у него не хватит полномочий изменить конфигурацию веб-сервера.
- 1Запустите конфигуратор от имени администратора и откройте нужную базу
- 2Откройте меню «Администрирование» — «Публикация на веб-сервере»
- 3Укажите имя публикации (латиницей, без пробелов) и выберите тип веб-сервера
- 4Отметьте нужные механизмы: веб-клиент, HTTP-сервисы, веб-сервисы, OData
- 5Нажмите «Опубликовать» и дождитесь сообщения об успешной публикации
- 6Перезапустите веб-сервер и проверьте доступ к базе из браузера
При публикации конфигуратор автоматически прописывает путь к модулю расширения в конфигурационных файлах веб-сервера: для Apache — в httpd.conf или отдельном включаемом файле, для IIS — в настройках обработчика ISAPI. Также создаётся файл default.vrd в каталоге публикации, который описывает параметры виртуального приложения.
Если публикация завершилась ошибкой, чаще всего причина в недостатке прав, несовпадении разрядности модуля и веб-сервера либо в том, что компонент модуля расширения не установлен.
Ручная настройка: когда конфигуратор не справляется
На Linux или при нестандартной конфигурации веб-сервера автоматическая публикация может быть недоступна, и модуль подключается вручную. Для Apache это делается директивой LoadModule в файле httpd.conf с указанием полного пути к библиотеке.
LoadModule _1cws_module "C:/Program Files/1cv8/8.3.22.1750/bin/wsap24.dll"После добавления строки в конфигурацию Apache задаётся обработчик для виртуального каталога публикации (директивы вида SetHandler 1c-application в блоке Location) и указывается путь к файлу default.vrd. Точный синтаксис зависит от версии Apache, поэтому надёжнее сверяться с документацией на используемую версию платформы.
Для IIS ручная настройка сводится к регистрации ISAPI-расширения wsisapi.dll, разрешению его выполнения в настройках ограничений ISAPI и CGI и созданию виртуального приложения с сопоставлением обработчика. Также потребуется включить нужные компоненты самого IIS (ISAPI Extensions, ISAPI Filters).
Как проверить, что модуль работает корректно
Первичная проверка — обращение к опубликованной базе из браузера по адресу вида http://сервер/имя_публикации. Если всё настроено верно, откроется страница входа веб-клиента или ответ HTTP-сервиса. Ошибка 404 означает, что виртуальный каталог не найден, а ошибка вида 500 — что модуль загрузился, но платформа не смогла обработать запрос.
Как проверить результат
Веб-сервер стартует без ошибок, в логах нет сообщений о невозможности загрузить библиотеку
Apache или IIS падает при запуске, в логе ошибка загрузки wsap24.dll или wsisapi.dll
Открывается страница входа веб-клиента или ответ сервиса
Ошибка 404, 500 или сообщение о несовпадении версий
Версия модуля совпадает с версией установленной платформы
Сообщение о несовместимости версий при обращении к базе
Дополнительно стоит проверить журналы веб-сервера: ошибки загрузки модуля Apache фиксирует в error.log, IIS — в журналах событий Windows и логах сайта. По тексту ошибки обычно сразу видно, связана ли проблема с разрядностью, правами доступа или отсутствием файла.
Типичные ошибки и ограничения
Отдельно стоит помнить об ограничениях. Один веб-сервер может обслуживать несколько публикаций, но все они будут использовать один загруженный модуль, то есть одну версию платформы. Если нужно публиковать базы на разных версиях 1С, придётся поднимать отдельные экземпляры веб-сервера на разных портах или разных машинах.
Безопасность и права доступа
Модуль расширения работает в контексте учётной записи, под которой запущен веб-сервер. Этой учётной записи нужны права на чтение каталога публикации и, для файловых баз, на каталог с базой. Для клиент-серверных баз доступ к данным идёт через сервер 1С, и права настраиваются на уровне кластера.
Для доступа извне локальной сети публикацию следует защищать: использовать HTTPS с корректным сертификатом, включать аутентификацию и ограничивать список публикуемых механизмов только реально нужными. Публикация HTTP-сервисов без аутентификации — частая причина утечек данных.
Что важно запомнить
Модуль расширения веб-сервера — обязательный посредник между Apache/IIS и платформой 1С. Он ставится вместе с платформой отдельным компонентом, подключается при публикации базы и требует совпадения версии и разрядности с платформой и веб-сервером. После любой настройки веб-сервер перезапускается, а результат проверяется обращением к базе из браузера.
Частые вопросы
Чем модуль расширения веб-сервера отличается от расширения конфигурации?
Это разные вещи. Модуль расширения веб-сервера — внешняя библиотека платформы (wsap24.dll, wsisapi.dll), связывающая веб-сервер с 1С. Расширение конфигурации — механизм доработки прикладного решения без изменения основной конфигурации, он хранится в самой базе и к веб-серверу отношения не имеет.
Нужно ли устанавливать модуль отдельно от платформы?
Отдельного дистрибутива нет: модуль входит в состав платформы 1С:Предприятие, но выделяется как отдельный компонент при установке. Если при установке компонент не был отмечен, запустите установщик повторно в режиме изменения и добавьте «Модули расширения веб-сервера».
После обновления платформы публикация перестала работать. Что делать?
Веб-сервер продолжает ссылаться на модуль старой версии, а она могла быть удалена. Выполните публикацию заново из конфигуратора новой версии или вручную поправьте путь к wsap24.dll/wsisapi.dll в конфигурации веб-сервера, затем перезапустите его.
Можно ли опубликовать базу на Linux-сервере?
Да, для Apache на Linux используется библиотека wsap24.so из состава платформы для Linux. Настройка выполняется вручную через httpd.conf: загрузка модуля директивой LoadModule и описание обработчика для каталога публикации с файлом default.vrd.
Что означает ошибка 500 при обращении к опубликованной базе?
Модуль загрузился, но запрос не обработался. Типичные причины: несовпадение версий модуля и платформы, недоступность сервера 1С или файловой базы, ошибки в файле default.vrd, недостаток прав у учётной записи веб-сервера. Диагностику начинайте с журналов веб-сервера и сервера 1С.
Можно ли на одном веб-сервере публиковать базы разных версий 1С?
Нет, в один процесс веб-сервера загружается только один модуль расширения, то есть одна версия платформы. Для разных версий поднимают отдельные экземпляры веб-сервера на разных портах или используют разные серверы.