Подтвердить что ты не робот

Служба ASMX работает на сервере разработки, возвращает 404 при развертывании в IIS 7.5

У меня есть веб-приложение в ASP.NET 4.0. Я добавил службу asmx, прежде всего в качестве источника для значений поиска расширителя автозаполнения.

Когда я отлаживаю свою локальную машину, все работает нормально. Однако, когда я развертываю веб-приложение в IIS 7.5, я получаю ответ HTTP 404 при попытке отправить данные в службу.

Я могу перейти к определению службы, см. доступные операции. Говоря, однако, когда я использую тестовые страницы для тестирования службы с помощью POST, я снова получаю HTTP 404.

Я не уверен, что происходит. Я создал файл asmx в своем веб-приложении и развертывается в виртуальном каталоге моего рабочего приложения, работающего в других приложениях.

Есть ли проблема с расширением .asmx файла в том же виртуальном каталоге, возможно?

4b9b3361

Ответ 1

Я только что столкнулся с той же ошибкой, после спотыкания над этой записью SO:

Обработчики возвращают ошибку 404 в интегрированном конвейере IIS7.5 и

Операция ASMX 404s, но описание службы ASMX не связано с проблемой маршрутизации URL-адреса?

и попробовал решение о добавлении обработчика asmx в раздел webserver web.configs, все было хорошо:

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true"/>
    <handlers>
      <add verb="*" path="*.asmx" name="asmx" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    </handlers>
  </system.webServer>


Ответ 2

Вы должны проверить пул приложений для веб-службы:

  • Он настроен на использование правильной версии .NET.
  • Проверьте личность
  • Проверить режим управляемого конвейера; некоторые приложения требуют использования Classic