Администрирование · 12 мин
ISAPI DLL: как включить веб-доступ к 1С через IIS
Как включить ISAPI-расширение 1С (wsisapi.dll) на IIS: установка компонентов, настройка публикации базы, типичные ошибки и проверка работы веб-доступа.
Запрос «isapi dll как включить 1С» почти всегда означает одну и ту же задачу: нужно опубликовать информационную базу 1С на веб-сервере IIS, а для этого требуется включить и зарегистрировать ISAPI-расширение 1С — библиотеку wsisapi.dll. Без неё IIS не сможет передавать запросы браузера в платформу 1С, и веб-клиент либо тонкий клиент по HTTP работать не будут.
ISAPI (Internet Server Application Programming Interface) — это интерфейс расширения веб-сервера Microsoft IIS. Расширение 1С реализовано именно как ISAPI-модуль: IIS загружает wsisapi.dll, а та уже взаимодействует с сервером 1С или файловой базой. Поэтому «включить ISAPI DLL для 1С» — это на деле последовательность: установить компоненты IIS, установить модуль расширения веб-сервера из дистрибутива 1С, разрешить ISAPI-расширение и опубликовать базу.
Ниже разобран полный порядок действий для Windows Server и клиентских версий Windows с IIS, а также типичные ошибки и способы проверки результата.
Что такое wsisapi.dll и когда она нужна
Библиотека wsisapi.dll входит в состав платформы 1С:Предприятие и устанавливается вместе с компонентой «Модуль расширения веб-сервера». Именно этот файл IIS вызывает при обращении к опубликованной базе: он принимает HTTP-запрос, передаёт его платформе 1С и возвращает ответ браузеру или тонкому клиенту.
ISAPI-расширение требуется в трёх сценариях: работа пользователей через веб-клиент в браузере, подключение тонкого клиента по протоколу HTTP к опубликованной базе и работа веб-сервисов/HTTP-сервисов, опубликованных из конфигурации. Если база используется только через толстый клиент по локальной сети или через сервер 1С напрямую, ISAPI не нужен.
Подготовка: что должно быть установлено заранее
Перед настройкой убедитесь, что на машине установлена платформа 1С:Предприятие той же разрядности, что и планируемый пул приложений IIS. Для 64-разрядного IIS нужен 64-разрядный модуль расширения веб-сервера; смешивание разрядностей — самая частая причина ошибки «модуль не загружается».
Проверьте, что у вас есть права локального администратора на сервере: установка компонентов IIS, регистрация ISAPI и публикация базы требуют повышенных привилегий. Также заранее определите, к какой базе будет идти обращение — файловой или клиент-серверной, потому что от этого зависят настройки доступа учётной записи пула приложений.
Шаг 1. Включение IIS и компонентов ISAPI в Windows
По умолчанию IIS в Windows отключён, а даже при включённом IIS компоненты ISAPI часто не установлены. Без них раздел «Ограничения ISAPI и CGI» в диспетчере IIS просто отсутствует, и включить расширение 1С не получится.
- 1Откройте «Панель управления» → «Программы» → «Включение или отключение компонентов Windows» (на серверной ОС — мастер добавления ролей, роль «Веб-сервер (IIS)»).
- 2Раскройте «Службы IIS» → «Службы Интернета» → «Компоненты разработки приложений» (в серверной ОС — службы роли «Разработка приложений»).
- 3Отметьте «Расширения ISAPI» (ISAPI Extensions) и «Фильтры ISAPI» (ISAPI Filters), при необходимости — CGI.
- 4В разделе «Общие функции HTTP» оставьте «Статическое содержимое» и «Документ по умолчанию».
- 5Завершите установку и выполните команду iisreset в командной строке от имени администратора.
После установки откройте диспетчер служб IIS (inetmgr) и убедитесь, что на уровне сервера появились значки «Ограничения ISAPI и CGI» и «Сопоставления обработчиков». Их наличие — признак того, что компоненты ISAPI установлены корректно.
Шаг 2. Установка модуля расширения веб-сервера 1С
Модуль расширения веб-сервера — отдельный компонент в установщике платформы 1С. Если при установке платформы его не выбирали, wsisapi.dll на диске отсутствует, и публикация завершится ошибкой.
Запустите установщик платформы 1С нужной версии, выберите изменение установки и отметьте компонент «Модуль расширения веб-сервера» (в английском интерфейсе — Web server extension module). После установки файл wsisapi.dll появится в каталоге bin соответствующей версии платформы, обычно по пути вида C:\Program Files\1cv8\<версия>\bin\wsisapi.dll.
Шаг 3. Публикация базы и включение ISAPI-расширения
Самый надёжный способ включить ISAPI для 1С — опубликовать базу штатными средствами конфигуратора: он сам создаст виртуальный каталог, пропишет сопоставление обработчика и зарегистрирует расширение. Запустите конфигуратор от имени администратора, откройте нужную базу и выполните «Администрирование» → «Публикация на веб-сервере».
В диалоге публикации укажите имя публикации (латиница, без пробелов — это будет часть URL), выберите веб-сервер IIS и каталог публикации. Отметьте нужные типы доступа: веб-клиент, тонкий клиент, веб-сервисы. После нажатия «Опубликовать» конфигуратор создаст файл default.vrd в каталоге публикации и настройки в IIS.
Если публикация выполняется вручную или конфигуратор не смог зарегистрировать расширение, включите ISAPI самостоятельно: в диспетчере IIS на уровне сервера откройте «Ограничения ISAPI и CGI», добавьте запись с путём к wsisapi.dll и установите флажок «Разрешить выполнение расширения». Затем на уровне сайта или виртуального каталога проверьте «Сопоставления обработчиков» — должно быть сопоставление для нужных расширений (например, *.1cws, запросы веб-клиента) с указанием на wsisapi.dll.
%windir%\system32\inetsrv\appcmd.exe set config /section:isapiCgiRestriction /+[path='C:\Program Files\1cv8\8.3.22.1750\bin\wsisapi.dll',description='1C Web Extension',allowed='true']Шаг 4. Настройка пула приложений и прав доступа
Публикация 1С работает в контексте пула приложений IIS, и от его настроек зависит половина всех проблем. Откройте «Пулы приложений», найдите пул, назначенный виртуальному каталогу 1С, и проверьте ключевые параметры.
Для 64-разрядного модуля 1С параметр «Разрешить 32-разрядные приложения» (Enable 32-Bit Applications) должен быть отключён — False. Если установлен 32-разрядный модуль, наоборот, включите этот параметр. Управляемый конвейер (Managed Pipeline Mode) рекомендуется оставить в режиме «Классический» (Classic) при возникновении проблем с обработчиками, хотя в большинстве случаев работает и Integrated.
Учётная запись пула (по умолчанию ApplicationPoolIdentity) должна иметь доступ: к каталогу публикации — чтение, к каталогу файловой базы — полный доступ (если база файловая), к каталогам платформы — чтение и выполнение. Для клиент-серверной базы важнее, чтобы с сервера IIS была сетевая доступность сервера 1С и кластер разрешал подключение.
Проверка результата и диагностика ошибок
После публикации откройте в браузере адрес вида http://имя_сервера/имя_публикации. Признак успешной настройки — загрузка страницы входа веб-клиента 1С со списком пользователей или формой авторизации. Если вместо этого ошибка, её код подскажет направление диагностики.
Как проверить результат
Загружается страница входа веб-клиента 1С
Ошибка 404 — не создан виртуальный каталог; 500 — проблема с ISAPI или разрядностью; 403 — нет прав или запрещено расширение
wsisapi.dll присутствует, состояние «Разрешено»
Записи нет или состояние «Запрещено»
Нет ошибок от источников IIS/W3SVC при обращении
Ошибки загрузки модуля wsisapi.dll или сбой w3wp.exe
Существует, содержит корректную строку подключения к базе
Файл отсутствует или путь к базе неверен
Ошибка 500.19 обычно означает проблему в конфигурации web.config виртуального каталога, 500.21 — что обработчик не найден или запрещён, а 404.17 — что ISAPI-расширение не разрешено на уровне сервера. Журналы IIS (по умолчанию в C:\inetpub\logs\LogFiles) позволяют уточнить подкод ошибки по каждому запросу.
Как выбрать действие
Альтернативы IIS и ограничения веб-доступа
IIS — не единственный вариант публикации 1С. Платформа поддерживает публикацию на Apache (через модуль wsap22/wsap24 в зависимости от версии), что актуально для Linux-серверов и смешанных инфраструктур. Порядок публикации из конфигуратора аналогичен, но вместо ISAPI используется модуль Apache, и настраивается он через httpd.conf.
Учитывайте ограничения веб-доступа: файловая база через веб-сервер работает медленнее клиент-серверной и хуже переносит большое число одновременных пользователей; для доступа из интернета обязательно настройте HTTPS и сертификат, иначе логины и данные передаются открытым текстом. Публикация базы напрямую в интернет без VPN, брандмауэра и ограничения доступа — серьёзный риск для данных.
Варианты веб-доступа к 1С
Штатный вариант для Windows-инфраструктуры, простая публикация из конфигуратора. Требует роли IIS и совпадения разрядности.
Подходит для Linux и кроссплатформенных схем. Настройка сложнее, правка конфигурации вручную.
Без веб-сервера вообще; подходит для локальной сети, но не даёт работы через браузер.
FAQ
Где находится файл wsisapi.dll?
В каталоге bin установленной версии платформы 1С, например C:\Program Files\1cv8\8.3.xx.xxxx\bin\wsisapi.dll. Если файла нет — компонент «Модуль расширения веб-сервера» не установлен, запустите установщик платформы и добавьте его.
Можно ли опубликовать 1С на IIS без конфигуратора?
Да, с помощью утилиты webinst из каталога bin платформы или полностью вручную: создать виртуальный каталог, разместить default.vrd, добавить сопоставление обработчика и разрешить wsisapi.dll в ограничениях ISAPI. Но публикация из конфигуратора надёжнее и быстрее.
Почему после публикации ошибка 500, а в журнале сбой w3wp.exe?
Чаще всего это несовпадение разрядности: 64-разрядный пул приложений пытается загрузить 32-разрядную wsisapi.dll или наоборот. Проверьте параметр «Разрешить 32-разрядные приложения» в настройках пула и версию установленного модуля расширения.
Нужно ли включать ISAPI-фильтры для 1С?
Для работы веб-клиента и веб-сервисов достаточно ISAPI-расширения (wsisapi.dll). ISAPI-фильтры 1С не использует, но сам компонент «Фильтры ISAPI» в Windows обычно устанавливают вместе с расширениями — вреда от этого нет.
Безопасно ли публиковать базу 1С в интернет через IIS?
Только при обязательном использовании HTTPS с действующим сертификатом, сильных паролях пользователей и ограничении доступа (VPN, IP-фильтрация, отдельный сайт). Публикация по HTTP в открытый интернет передаёт учётные данные и содержимое базы без шифрования.
Одна wsisapi.dll может обслуживать несколько баз?
Да. Каждая публикация — отдельный виртуальный каталог со своим default.vrd, но все они могут использовать одно и то же ISAPI-расширение одной версии платформы. Для баз на разных версиях платформы потребуются отдельные пулы приложений и модули соответствующих версий.
Что важно запомнить
Включение ISAPI DLL для 1С — это установка компонентов IIS с поддержкой ISAPI, установка модуля расширения веб-сервера из дистрибутива платформы, разрешение wsisapi.dll и публикация базы через конфигуратор. Ключевые условия успеха: совпадение разрядности и версии модуля с платформой, правильные настройки пула приложений и права учётной записи пула на каталоги.