Как настроить публикацию баз 1С 8.3 на веб-сервере Apache 2.4 и исправить ошибку «Не установлены модули веб-сервера»?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При настройке веб-доступа к базам «1С:Предприятие 8.3» системные администраторы часто отказываются от использования тяжеловесного IIS в пользу более легкого и быстрого веб-сервера Apache 2.4. Однако в процессе настройки связки под управлением операционной системы Windows Server можно столкнуться с неприятной проблемой: веб-сервер успешно запущен, тестовая страница в браузере открывается, но при попытке опубликовать базу данных через Конфигуратор 1С выдается ошибка «Не установлены модули веб-сервера».

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

Выясняем причину: Конфликт разрядности (Bitness) и версии платформ

Основной источник проблемы кроется в несовпадении разрядности установленного веб-сервера Apache 2.4 и платформы «1С:Предприятие», из которой инициируется публикация. Проанализируем ключевые технические нюансы:

Пошаговый алгоритм решения проблемы

Рассмотрим последовательность действий, которая поможет гарантированно решить проблему с публикацией баз.

Шаг 1. Проверяем разрядность установленного Apache

Откроем командную строку Windows и выполним команду для определения версии и разрядности веб-сервера:

httpd -v

Обратим внимание на архитектуру (например, x64 или x86). Нам необходимо убедиться, что установленная версия 1С соответствует этой разрядности.

Шаг 2. Установка правильных модулей расширения 1С

Запустим программу установки (инсталлятор) платформы «1С:Предприятие» той же разрядности, что и веб-сервер Apache. Выберем режим изменения состава установленных компонентов и обязательно отметим пункт «Модули расширения веб-сервера». После завершения установки перейдем в каталог bin платформы (например, C:\Program Files\1cv8\8.3.24.XXXX\bin) и убедимся в наличии файла wsap24.dll.

Шаг 3. Установка библиотек MSVC

Перейдем на официальный сайт Microsoft и установим последнюю версию распространяемого пакета Microsoft Visual C++ Redistributable для вашей архитектуры (vc_redist.x64.exe или vc_redist.x86.exe).

Использование утилиты webinst для публикации баз

Вместо использования графического Конфигуратора, который может сбоить из-за нехватки лицензий или прав пользователя на сервере, рассмотрим профессиональный инструмент — консольную утилиту webinst, поставляемую вместе с платформой 1С.

Разберем по шагам, как выполнить публикацию через командную строку:

  1. Запустим командную строку (cmd) или PowerShell обязательно от имени Администратора.
  2. Перейдем в каталог bin установленной версии 1С нужной разрядности. Например:

    cd "C:\Program Files\1cv8\8.3.24.1350\bin"

  3. Для публикации серверной базы выполним следующую команду:
    
    webinst -publish -apache24 -wsdir MyBase -dir "C:\Apache24\htdocs\MyBase" -connstr "Srvr=My1CServer;Ref=MyBaseName;" -confpath "C:\Apache24\conf\httpd.conf"
    
  4. Если нам нужно опубликовать файловую базу, команда будет выглядеть так:
    
    webinst -publish -apache24 -wsdir MyBase -dir "C:\Apache24\htdocs\MyBase" -connstr "File=\"C:\1C_Bases\MyBase\";" -confpath "C:\Apache24\conf\httpd.conf"
    

После выполнения этой команды утилита самостоятельно создаст целевую папку публикации, сгенерирует в ней конфигурационный файл default.vrd и автоматически допишет необходимые директивы подключения модуля 1С в конец конфигурационного файла веб-сервера httpd.conf.

Тонкости ручной правки конфигурационного файла Apache

Иногда после работы автомата или при использовании нескольких версий платформ требуется ручная корректировка конфигурационного файла Apache. Откроем файл httpd.conf (обычно он находится по пути C:\Apache24\conf\httpd.conf) и проанализируем важные правила форматирования.

Формат путей в Apache: Веб-сервер Apache в операционной системе Windows требует использования прямых слэшей (/) в путях к файлам и каталогам вместо обратных слэшей (\). Если указать обратные слэши, веб-сервер откажется запускаться.

Пример корректных ручных записей в конце файла httpd.conf для подключения модуля 1С:


LoadModule _1cws_module "C:/Program Files/1cv8/8.3.24.1350/bin/wsap24.dll"

<Directory "C:/Apache24/htdocs/MyBase">
    AllowOverride None
    Options None
    Require all granted
    SetHandler 1c-application
    ManagedApplicationDescriptor "C:/Apache24/htdocs/MyBase/default.vrd"
</Directory>

Обратите внимание на точный путь к библиотеке wsap24.dll. Если вы перешли на 64-разрядный веб-сервер, путь должен указывать на каталог Program Files, а не на Program Files (x86).

Настройка прав доступа в Windows Server

Выясним причину ситуации, когда публикация завершена успешно, но при попытке входа в базу в браузере отображается ошибка HTTP 500 (Internal Server Error) или HTTP 403 (Forbidden). Это напрямую связано с правами доступа операционной системы Windows.

По умолчанию служба веб-сервера Apache запускается от имени системной учетной записи (например, SYSTEM или Network Service). Для корректного функционирования веб-клиента необходимо настроить права безопасности следующим образом:

Параллельная работа нескольких версий платформ 1С

Рассмотрим сложный сценарий, когда на одном сервере требуется одновременно опубликовать несколько информационных баз, работающих на разных релизах платформы (например, одна на старой версии 8.3.15, а другая на новой 8.3.24).

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

Каждая служба настраивается на работу со своим сетевым портом (например, порт 80 для одного релиза и порт 81 для другого), использует собственный конфигурационный файл httpd.conf и загружает библиотеку wsap24.dll из каталога соответствующей версии платформы 1С.

← На главную