Почему классический режим мешает запуску 1С
Если 1С не работает с пулом приложений, настроенным как классический, причина обычно связана с порядком обработки веб-запроса в IIS. В классическом режиме IIS и среда ASP.NET обрабатывают запросы раздельно, а в интегрированном используется единый конвейер. Веб-расширение 1С подключается через собственный обработчик, поэтому для корректной работы важны режим конвейера, разрядность процесса и зарегистрированные сопоставления.
Проблема может выглядеть по-разному: браузер показывает ошибку сервера, страница остается пустой, появляется запрос на загрузку файла либо публикация отвечает кодом 404 или 500. Иногда начальная страница открывается, но соединение с информационной базой не устанавливается. Сам текст ошибки важнее внешнего признака: одинаковое сообщение в браузере может быть вызвано разными настройками IIS.
Перевод пула в интегрированный режим — основная проверка, но не универсальное исправление. Если после переключения ничего не изменилось, нужно последовательно проверить назначение приложения, обработчики 1С, права учетной записи и совпадение разрядности компонентов.
Как определить, какой пул обслуживает публикацию
Откройте диспетчер IIS на сервере и найдите сайт или приложение, в котором опубликована информационная база. В основных параметрах приложения указано имя назначенного пула. Не ориентируйтесь только на название: пул с названием, содержащим слово «1С», необязательно обслуживает нужную публикацию.
- Выберите публикацию в дереве сайтов IIS.
- Откройте ее основные или дополнительные параметры.
- Запишите имя назначенного пула приложений.
- Перейдите в раздел пулов и найдите эту строку.
- Посмотрите значение режима управляемого конвейера.
Если вместо приложения в IIS создан только виртуальный каталог, часть параметров может быть недоступна. В таком случае сначала проверьте, преобразован ли каталог в приложение и к какому пулу он относится. Не меняйте настройки соседнего сайта: на одном сервере могут работать несколько публикаций с разными требованиями.
Как безопасно сменить классический пул на интегрированный
Перед изменением зафиксируйте исходные параметры или сделайте снимки экрана. Это позволит вернуть конфигурацию, если тот же пул используется другим веб-приложением. По возможности создайте для публикации 1С отдельный пул: тогда перезапуск и изменение режима не затронут остальные сайты на сервере.
- Остановите обращения пользователей к проверяемой публикации.
- В диспетчере IIS откройте дополнительные параметры нужного пула.
- Для режима управляемого конвейера выберите значение «Интегрированный».
- Проверьте, что публикация по-прежнему назначена именно этому пулу.
- Запустите или перезапустите пул, затем откройте публикацию в новом окне браузера.
При перезапуске активные веб-сеансы могут завершиться, поэтому изменение лучше согласовать с пользователями. Если пул сразу останавливается повторно, не запускайте его много раз подряд. Такое поведение обычно означает ошибку загрузки компонента, неверные учетные данные или срабатывание защиты от частых сбоев. Точную причину следует искать в событиях Windows и журналах IIS.
Что проверить после переключения режима
Сначала убедитесь, что сам пул находится в состоянии «Запущен». Затем запросите стартовую страницу публикации и запишите точное время проверки. Оно поможет сопоставить ответ браузера с записью в журнале. Проверяйте адрес непосредственно на сервере и с рабочего компьютера: различие результатов позволяет отделить ошибку веб-приложения от сетевой проблемы.
Следующая проверка — сопоставления обработчиков. В конфигурации публикации должен присутствовать обработчик веб-расширения 1С, а путь к его модулю должен вести к существующему файлу установленной платформы. После обновления платформы старый путь иногда сохраняется, хотя нужный компонент уже расположен в другом каталоге. Надежнее заново опубликовать базу штатным средством администрирования 1С, предварительно сохранив действующие настройки.
Также сравните разрядность веб-компонента и рабочего процесса IIS. Параметр поддержки 32-разрядных приложений должен соответствовать установленному расширению. Нельзя выбирать значение наугад: посмотрите, какой компонент указан в обработчике, и сопоставьте его с установленной версией платформы.
Наконец, проверьте учетную запись пула. Ей требуется доступ на чтение и выполнение файлов публикации и компонентов платформы. Если база файловая, отдельно учитываются права к ее каталогу; если используется серверный вариант, доступ организован иначе. Не выдавайте широкие разрешения всей папке сервера ради проверки — добавляйте только необходимые права к конкретным каталогам.
Как читать ошибки IIS без догадок
Код 404 не всегда означает, что публикация отсутствует. Дополнительный код может указывать на неподходящий обработчик или запрещенное расширение. Ошибка 500 говорит о сбое на стороне сервера, но ее причины включают некорректную конфигурацию, невозможность загрузить модуль и недостаточные права. Сообщение 503 часто появляется, когда назначенный пул остановлен или не может запуститься.
Откройте журнал IIS и найдите запрос по времени, адресу публикации и коду ответа. Затем проверьте журнал приложений и системный журнал Windows за тот же период. Полезны имя сбойного модуля, путь к файлу, код состояния и учетная запись процесса. Эти данные следует сохранить целиком, а не переписывать только общую фразу из браузера.
Если сервер используется организацией, перед изменением конфигурации передайте администратору имя сайта, имя пула, точное время ошибки, код ответа и сведения о последнем обновлении платформы. Такой набор сокращает диагностику и не требует раскрывать пароль пользователя или информационной базы.
Когда возвращать прежнюю настройку
Верните классический режим, если после переключения перестало работать другое приложение, использующее тот же пул. Это не означает, что публикация 1С требует классический конвейер: вероятнее, двум приложениям нужны разные параметры. Создайте отдельный пул для 1С, назначьте его публикации и повторите проверку в интегрированном режиме.
Если отдельный интегрированный пул запускается, но публикация не отвечает, дальнейшие изменения режима бесполезны. Проверьте обработчик, разрядность, физический путь и права. При ошибке после обновления платформы сравните версию серверных компонентов с версией, которой выполнена публикация, и при необходимости повторите публикацию штатным инструментом.
Не удаляйте работающие сопоставления и не редактируйте конфигурационные файлы без копии. Для обращения к специалисту подготовьте описание результата каждого шага: какой пул выбран, какой режим установлен, запускается ли процесс, какой код возвращает IIS и какая запись появляется в журнале. Это позволяет найти причину без серии случайных изменений.