Разберем ситуацию, с которой часто сталкиваются специалисты при публикации информационной базы 1С на веб-сервере IIS — для этого есть настройка обмена данными через веб-сервис. После настройки веб-сервера и выполнения публикации через конфигуратор база отказывается запускаться, а в браузере выдается ошибка: HTTP 404.0 - Not Found (Разыскиваемый вами ресурс был удален, было изменено его имя или он временно недоступен). При этом в деталях ошибки фигурирует модуль IIS Web Core, уведомление MapRequestHandler, обработчик 1cw и код ошибки 0x80070002.
Проанализируем по шагам все возможные причины этой проблемы и подробно рассмотрим методы её решения.
Выясним причину, по которой публикация вроде бы создается, но необходимые права и файлы не конфигурируются должным образом. Операционная система Windows имеет механизм UAC (User Account Control), который ограничивает права приложений, даже если пользователь является администратором системы.
Посмотрим на самое простое решение, которое решает проблему в большинстве случаев:
Это действие позволяет платформе корректно внести изменения в системные каталоги inetpub и настройки самого веб-сервера IIS.
Если публикация от имени администратора не помогла, проверим параметры обработчика в IIS. Часто проблема кроется в том, что веб-сервер пытается найти физический файл или каталог там, где должен срабатывать виртуальный обработчик ISAPI.
Разберем по шагам, как это исправить:
1cw, 1cws или имеет расширения *.1cws, *.1crs).После снятия этой галочки IIS перестанет искать физический файл по переданному URL и корректно передаст запрос библиотеке wsisapi.dll.
Рассмотрим подробнее архитектурные нюансы. Несовпадение разрядности платформы 1С и настроек пула приложений IIS — классическая причина 404 ошибки. Если вы установили 32-разрядную платформу 1С на 64-разрядный Windows Server, IIS не сможет загрузить библиотеку.
DefaultAppPool или специально созданный пул).True, если платформа 1С 32-битная. Если вы используете 64-битную 1С, убедитесь, что параметр равен False, а пути в обработчиках ведут в папку bin 64-битной версии.Проанализируем компоненты сервера. Для работы 1С требуются технологии ISAPI, которые в новых версиях IIS могут быть отключены по умолчанию.
wsisapi.dll от вашей версии 1С, и для нее установлено состояние Разрешено.Особое внимание уделим правам доступа. Ошибка "файл не найден" (0x80070002) часто маскирует под собой банальную нехватку прав у процесса веб-сервера на чтение файлов 1С.
C:\Program Files\1cv8\8.3.x.x\bin\).IIS AppPool\ИмяПула) и дайте им права на Чтение и выполнение.default.vrd) и для каталога с самой информационной базой (если база файловая), дав этим пользователям права на Изменение (Modify).Посмотрим на настройки MIME-типов и конфигурационные файлы. Если IIS не знает расширений файлов веб-сервисов 1С, он будет отвергать запросы к ним — для этого есть обработка настройки веб-сервисов для обмена.
.1cws и .1crs с типом MIME text/xml или application/octet-stream.Кроме того, откройте сам файл default.vrd в текстовом редакторе и проверьте корректность пути к базе. Убедитесь, что путь к wsisapi.dll в настройках обработчика и версия платформы, которой опубликована база, совпадают. Рассинхронизация версий при обновлении платформы — частая проблема.
Выполнив все описанные выше шаги, обязательно перезапустите веб-сервер. Сделать это можно из командной строки, запущенной от имени администратора, командой:
iisreset
После этого публикация информационной базы 1С на IIS заработает корректно, и ошибка 404.0 с кодом 0x80070002 будет устранена.