К статье
Практический материал

Администрирование · 8 мин

Публикация 1С на веб-сервере IIS в Windows Server 2008

Пошаговая публикация базы 1С на IIS в Windows Server 2008: настройка компонентов, пул приложений, права, ws-расширение, проверка и типичные ошибки.

Публикация информационной базы 1С на веб-сервере IIS позволяет пользователям работать с базой через браузер или тонкий клиент по протоколу HTTP, без установки полного клиента на каждое рабочее место. В Windows Server 2008 используется IIS 7.0, и процедура публикации на нём имеет свои особенности: требуется включить ряд компонентов роли веб-сервера, правильно настроить пул приложений и расширение ISAPI, которое поставляется вместе с платформой 1С:Предприятие.

Перед началом убедитесь, что на сервере установлена платформа 1С:Предприятие той же разрядности, что и планируемый пул приложений, а сама база работает в клиент-серверном варианте (например, на MS SQL Server) или файловая база доступна по сети. Публикация файловой базы возможна, но для нескольких одновременных пользователей рекомендуется клиент-серверный режим.

Подготовка сервера: роль IIS и необходимые компоненты

Откройте диспетчер сервера и добавьте роль «Веб-сервер (IIS)». При выборе служб роли обязательно отметьте компоненты из группы «Разработка приложений»: расширения ISAPI и фильтры ISAPI — без них модуль 1С физически не сможет обрабатывать запросы. Также оставьте включёнными статическое содержимое и стандартные средства управления IIS.

После установки роли проверьте, что IIS отвечает: откройте в браузере на сервере адрес http://localhost — должна отобразиться стартовая страница IIS 7. Если страница не открывается, проверьте, запущена ли служба W3SVC (служба веб-публикаций) и не занят ли порт 80 другим приложением.

Установка платформы 1С и модуля расширения веб-сервера

Установите платформу 1С:Предприятие на сервер, выбрав в установщике компонент «Модули расширения веб-сервера». Именно этот компонент содержит библиотеку wsisapi.dll (для 32-разрядной платформы), которая подключается к IIS как расширение ISAPI и передаёт запросы от веб-сервера к платформе 1С.

Учитывайте разрядность: IIS 7 по умолчанию запускает 64-разрядные пулы приложений. Если у вас 32-разрядная платформа 1С, для пула приложений нужно включить параметр «Разрешить 32-разрядные приложения» (Enable32BitAppOnWin64). Несоответствие разрядности — одна из самых частых причин ошибки 500 после публикации.

Публикация базы через конфигуратор

Запустите конфигуратор 1С от имени администратора, откройте нужную информационную базу и перейдите в меню «Администрирование» → «Публикация на веб-сервере». В диалоге укажите имя публикации (латиницей, без пробелов — это будет часть URL), выберите веб-сервер IIS и каталог, в котором будет создана публикация.

На вкладках диалога можно включить доступ через тонкий клиент и веб-клиент, а также опубликовать веб-сервисы и HTTP-сервисы, если они используются в конфигурации. После нажатия кнопки «Опубликовать» конфигуратор создаст виртуальный каталог в IIS, файл default.vrd с параметрами подключения к базе и зарегистрирует обработчик ISAPI.

Порядок публикации
  1. 1
    Установите роль IIS с компонентами ISAPI
  2. 2
    Установите платформу 1С с модулем расширения веб-сервера
  3. 3
    Откройте конфигуратор от имени администратора
  4. 4
    Администрирование → Публикация на веб-сервере, укажите имя и каталог
  5. 5
    Нажмите «Опубликовать» и проверьте создание виртуального каталога в IIS
  6. 6
    Настройте пул приложений под разрядность платформы
  7. 7
    Откройте http://сервер/имя_публикации в браузере

Настройка пула приложений и прав доступа

Откройте диспетчер служб IIS, найдите пул приложений, под которым работает публикация, и задайте ему подходящую учётную запись. У этой учётной записи должны быть права на чтение каталога публикации, на каталоги платформы 1С, а при файловом варианте — полный доступ к каталогу базы. Для клиент-серверного варианта учётная запись пула должна иметь доступ к серверу 1С или SQL Server, если используется Windows-аутентификация.

Убедитесь, что в сопоставлениях обработчиков виртуального каталога присутствует обработчик для расширения 1С и у него разрешено выполнение. Также проверьте список «Ограничения ISAPI и CGI» на уровне сервера: расширение wsisapi.dll должно иметь статус «Разрешено» — IIS 7 добавляет его автоматически при публикации, но при ручной настройке его нужно добавить вручную.

Типичные ошибки
01
32-разрядная платформа при 64-разрядном пуле без Enable32BitAppOnWin64 — ошибка 500 или 503
02
Публикация выполнена не от имени администратора — виртуальный каталог создан частично, обработчик не зарегистрирован
03
У пула приложений нет прав на каталог базы — ошибка доступа при открытии в браузере
04
Не разрешено расширение ISAPI в ограничениях ISAPI и CGI — страница не открывается
05
Использование нестандартных символов или кириллицы в имени публикации — проблемы с URL

Проверка работоспособности публикации

Откройте браузер и перейдите по адресу http://имя_сервера/имя_публикации. Должна загрузиться страница входа веб-клиента 1С со списком пользователей или формой аутентификации. Если база клиент-серверная, дополнительно проверьте подключение тонким клиентом, указав строку подключения вида http://сервер/имя_публикации.

Если вместо страницы входа появляется ошибка, смотрите её код: 404 означает, что виртуальный каталог не создан или имя указано неверно; 403 — проблема с правами или запрещённым выполнением скриптов; 500 — чаще всего несоответствие разрядности или незагруженный модуль ISAPI. Журналы IIS в каталоге inetpub\logs и журнал событий Windows помогут локализовать причину.

Контрольные точки

Как проверить результат

Открытие http://сервер/имя_публикации в браузере
Норма

Загружается форма входа веб-клиента 1С

Тревожный признак

Ошибка 404, 403 или 500

Статус пула приложений в IIS
Норма

Пул запущен, разрядность совпадает с платформой

Тревожный признак

Пул останавливается после первого запроса

Ограничения ISAPI и CGI
Норма

wsisapi.dll имеет статус «Разрешено»

Тревожный признак

Расширение отсутствует или запрещено

Подключение тонким клиентом по HTTP
Норма

База открывается, данные доступны

Тревожный признак

Ошибка соединения с сервером

Ограничения и альтернативные варианты

Windows Server 2008 и IIS 7.0 — устаревшая платформа, не получающая обновлений безопасности, поэтому использовать её для публикации базы в интернете небезопасно. Если есть возможность, разворачивайте публикацию на более новой версии Windows Server. Кроме того, современные версии платформы 1С могут не поддерживать установку на Server 2008 — проверяйте системные требования конкретного релиза.

Альтернативой IIS служит веб-сервер Apache, который платформа 1С также поддерживает, — он подходит, если в инфраструктуре уже используется Apache или требуется кроссплатформенное решение. Для небольшого числа пользователей внутри локальной сети вместо веб-доступа иногда проще использовать терминальный доступ или прямое подключение тонкого клиента к серверу 1С.

Сравнение вариантов веб-доступа

IIS на Windows Server 2008

Подходит, если сервер уже развёрнут и работает внутри локальной сети; ограничение — устаревшая ОС без обновлений безопасности

IIS на новой версии Windows Server

Рекомендуемый вариант для новых развёртываний; поддержка актуальных версий платформы 1С и обновлений безопасности

Apache

Подходит при гетерогенной инфраструктуре; требует ручной настройки публикации через утилиту webinst

Часто задаваемые вопросы

Можно ли опубликовать файловую базу 1С на IIS?

Да, можно. Каталог файловой базы должен быть доступен учётной записи пула приложений с правами на чтение и запись. Однако при одновременной работе нескольких пользователей файловый вариант через веб-сервер работает медленнее и менее надёжно, чем клиент-серверный.

Что делать, если после публикации появляется ошибка 500?

Чаще всего причина — несоответствие разрядности: 32-разрядная платформа 1С и 64-разрядный пул приложений. Включите для пула параметр «Разрешить 32-разрядные приложения». Также проверьте, что расширение wsisapi.dll разрешено в ограничениях ISAPI и CGI.

Как изменить параметры уже созданной публикации?

Откройте публикацию заново через конфигуратор (Администрирование → Публикация на веб-сервере), измените настройки и нажмите «Опубликовать» — файл default.vrd будет перезаписан. Либо отредактируйте default.vrd вручную в каталоге публикации.

Нужен ли отдельный сервер 1С для веб-публикации?

Для файлового варианта — нет, достаточно веб-сервера и платформы. Для клиент-серверного варианта нужен работающий кластер серверов 1С и сервер СУБД; IIS при этом выступает только шлюзом, передающим запросы кластеру.

Как обеспечить безопасность опубликованной базы?

Минимальный набор: включить HTTPS с сертификатом, использовать аутентификацию средствами 1С или Windows, ограничить доступ по IP в настройках IIS, не публиковать базу напрямую в интернет без VPN или шлюза. Устаревшая ОС дополнительно повышает риски, поэтому сервер стоит изолировать внутри периметра сети.

Итог

Что важно запомнить

Публикация 1С на IIS в Windows Server 2008 сводится к установке роли IIS с компонентами ISAPI, установке платформы с модулем расширения веб-сервера, публикации через конфигуратор и настройке пула приложений под разрядность платформы. Контрольные точки — разрешённое расширение ISAPI, права пула и успешное открытие страницы входа в браузере.