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

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

Как опубликовать 1С на веб-сервере IIS

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

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

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

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

Что понадобится перед началом работы

Перед публикацией убедитесь, что на сервере установлены все необходимые компоненты. Пропуск любого из них — самая частая причина ошибок вида «404 Not Found» или «Ошибка загрузки компоненты» при открытии базы в браузере.

  • Windows Server с установленной ролью IIS (подойдёт и клиентская Windows для тестов, но для рабочей среды лучше серверная ОС).
  • Платформа 1С:Предприятие той же версии, под которой работает база, с компонентой «Модули расширения веб-сервера» — при установке платформы этот пункт нужно отметить явно, по умолчанию он может быть не выбран.
  • Права локального администратора на сервере.
  • Для клиент-серверного варианта — доступный сервер 1С и СУБД, для файлового — сетевой или локальный каталог с базой.

Важное требование — разрядность. Если установлена 64-разрядная платформа 1С, модуль расширения веб-сервера также 64-битный, и пул приложений IIS должен работать в 64-битном режиме. Смешивание разрядностей приводит к ошибке загрузки модуля wsisapi.dll.

Установка и настройка IIS

Откройте «Диспетчер сервера» → «Добавить роли и компоненты» и установите роль «Веб-сервер (IIS)». Помимо компонентов по умолчанию обязательно отметьте в разделе «Разработка приложений» пункты Расширения ISAPI и Фильтры ISAPI — именно через них работает модуль расширения 1С. Без этих компонентов публикация завершится ошибкой.

Также рекомендуется включить «Проверку подлинности Windows» в разделе «Безопасность», если планируется сквозная аутентификация доменных пользователей, и «Статическое содержимое» — оно нужно для отдачи файлов интерфейса веб-клиента.

После установки откройте «Диспетчер служб IIS» (команда inetmgr) и убедитесь, что Default Web Site запущен и отвечает: откройте в браузере http://localhost — должна появиться стартовая страница IIS.

Порядок установки IIS
  1. 1
    Откройте Диспетчер сервера → Добавить роли и компоненты
  2. 2
    Выберите роль Веб-сервер (IIS)
  3. 3
    В службах роли отметьте: Статическое содержимое, Расширения ISAPI, Фильтры ISAPI, Проверка подлинности Windows
  4. 4
    Завершите установку и перезапустите сервер при необходимости
  5. 5
    Проверьте работу: откройте http://localhost в браузере

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

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

В окне публикации укажите:

  • Имя — имя виртуального каталога, оно же будет частью URL (например, Trade → http://сервер/Trade). Используйте латиницу без пробелов.
  • Веб-сервер — выберите IIS.
  • Каталог — физическая папка, куда будут записаны файлы публикации (default.vrd и связанные). Обычно это подкаталог в C:\inetpub\wwwroot или отдельная папка.
  • Флажки «Публиковать тонкий клиент и веб-клиент» и, при необходимости, «Публиковать Web-сервисы» и «Публиковать HTTP-сервисы».

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

text
REM Альтернатива — публикация утилитой webinst из командной строки (запуск от администратора):
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\webinst.exe" -publish -iis -wsdir Trade -dir "C:\inetpub\1C\Trade" -connstr "File=\"D:\\Bases\\Trade\";" -confpath "C:\Program Files\1cv8\8.3.xx.xxxx\bin\conf\default.vrd"

Публикация файловой и клиент-серверной базы

Для файловой базы в строке подключения указывается путь к каталогу базы (File=...). Учётная запись пула приложений IIS должна иметь полный доступ к этому каталогу — иначе получите ошибку доступа при первом входе.

Для клиент-серверной базы в default.vrd прописывается соединение через сервер 1С (Srvr=...;Ref=...). В этом случае права на файловые каталоги базы не нужны, но сервер 1С должен быть доступен с машины IIS по сети.

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

После публикации откройте «Диспетчер служб IIS» → «Пулы приложений». Для публикации 1С создаётся отдельный пул (или используется DefaultAppPool). Проверьте его дополнительные параметры:

  • Версия среды .NET CLR — для 1С роли не играет, можно оставить «Без управляемого кода».
  • Разрешены 32-разрядные приложения — должно быть False для 64-битной платформы. Значение True при 64-битном модуле даёт ошибку 500 при обращении к базе.
  • Удостоверение — учётная запись, под которой работает пул. Для файловой базы задайте доменную или локальную учётную запись с правами на каталог базы и на временные каталоги.

Дополнительно проверьте NTFS-права: учётная запись пула должна иметь чтение и выполнение на каталог платформы 1С и полный доступ на каталог файловой базы, каталог публикации и временные папки (например, C:\Windows\Temp или выделенный каталог для сеансовых данных).

Проверка работы и типичные ошибки

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

Типичные ошибки
01
Ошибка 404 — не установлены расширения ISAPI в IIS или модуль расширения веб-сервера 1С не установлен вместе с платформой
02
Ошибка 500 / не загружается wsisapi.dll — несовпадение разрядности: включён 32-битный режим пула при 64-битной платформе
03
Ошибка доступа к каталогу базы — у учётной записи пула приложений нет NTFS-прав на каталог файловой базы
04
Публикация вроде прошла, но страница пустая — конфигуратор запускался без прав администратора и файлы не записались полностью
05
После обновления платформы база перестала открываться — нужно заново выполнить публикацию, чтобы обновились ссылки на новую версию модуля расширения

Если страница не открывается, смотрите журнал IIS (каталог C:\inetpub\logs\LogFiles) и журнал событий Windows — там видно, на каком этапе происходит сбой: загрузка модуля, доступ к каталогу или подключение к серверу 1С.

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

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

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

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

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

Ошибка 404, 500 или пустая страница

Пул приложений в IIS
Норма

Пул в состоянии Started, 32-битные приложения отключены для 64-битной платформы

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

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

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

База добавляется по адресу веб-сервера и открывается

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

Ошибка соединения или неверная версия компоненты

Обновление и сопровождение публикации

При каждом обновлении платформы 1С публикацию нужно выполнять заново: файл default.vrd и регистрация модуля в IIS привязаны к конкретной версии платформы. Проще всего после обновления снова зайти в конфигуратор и нажать «Опубликовать» поверх существующей публикации.

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

Итог

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

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

Частые вопросы

Можно ли опубликовать 1С на IIS без установки конфигуратора на сервере?

Да, используйте утилиту webinst.exe из каталога bin платформы — она выполняет публикацию из командной строки без запуска конфигуратора. Платформа с модулями расширения веб-сервера всё равно должна быть установлена на сервере.

Чем публикация на IIS отличается от публикации на Apache?

Функционально — ничем: веб-клиент и тонкий клиент работают одинаково. IIS проще в интеграции с доменной аутентификацией Windows, Apache чаще выбирают на Linux-серверах или когда требуется гибкая маршрутизация. Порядок публикации в конфигураторе одинаковый, меняется только тип веб-сервера.

Почему после обновления платформы веб-клиент перестал работать?

Модуль расширения веб-сервера привязан к версии платформы. После обновления заново выполните публикацию базы через конфигуратор или webinst — файлы публикации будут переписаны с привязкой к новой версии.

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

Нужен внешний IP-адрес или доменное имя, проброс портов на маршрутизаторе и обязательно HTTPS с сертификатом. Безопаснее использовать VPN или шлюз удалённого доступа, чтобы не выставлять веб-клиент 1С напрямую в открытую сеть.

Можно ли на одном IIS опубликовать несколько баз 1С?

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

Какой режим аутентификации выбрать для веб-клиента?

В локальной сети удобна проверка подлинности Windows — доменные пользователи входят без ввода пароля. Для внешнего доступа используйте аутентификацию 1С по логину и паролю поверх HTTPS, отключив анонимный доступ к виртуальному каталогу.