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

Получение "Обработчик WebResource.axd должен быть зарегистрирован в конфигурации для обработки этого запроса". ошибка

Я получаю эту ошибку при запуске моего приложения ASP.NET на IIS7. Я пробовал делать то, что он говорит, но это не помогает.

Обработчик WebResource.axd должен быть зарегистрированный в конфигурации для обработайте этот запрос.

> <!-- Web.Config Configuration File -->
> 
> <configuration>    
>     <system.web>
>        <httpHandlers>
>            <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
>        </httpHandlers>    
>     </system.web> 
> </configuration>

Я использую немного AJAX, что, по-моему, вызывает проблему. Кто-нибудь сталкивался с этим раньше?

4b9b3361

Ответ 1

Я понял это, поэтому я размещаю его здесь для поиска. Это ошибка в ASP.NET, и она связана с установкой ColdFusion. Microsoft еще не выпустила исправление.

Есть два способа исправить это.

  • Измените AppPool в IIS7 на "Классический .NET AppPool". Я не уверен в каких-либо последствиях этого параметра.

  • Удалите все ссылки на ColdFusion из файла applicationHost.config в system32\inetsrv\config.

Ответ 2

ColdFusion устанавливает глобальное сопоставление обработчиков подстановочных знаков, которое, по-видимому, переопределяет многие стандартные обработчики .NET. Вышеупомянутые решения работают очень хорошо, но если вы не можете переключиться в классический режим и не хотите подключаться к вашей установке ColdFusion, вы можете удалить наследование унаследованного обработчика на отдельном уровне сайта.

Чтобы сделать это, перейдите на соответствующий сайт в IIS, дважды щелкните "Отображения обработчиков" в разделе "IIS" и найдите обработчик с именем "AboMapperCustom-XXXXXX" с "*" для Пути, Выберите запись и нажмите "Удалить" на боковой панели. Это приведет только к удалению сопоставления для вашего приложения, поэтому оно не будет прерывать существующие CF-сайты на сервере.

Ответ 3

В IIS7 вам нужно добавить раздел <httpHandler> в <system.webServer> вместо <system.web>. Вот пример.

Ответ 4

Я получил эту ошибку после небрежного копирования моего приложения web.config между двумя кластерными серверами, которые перезаписали тег:

<system.webServer>
    <handlers>
        <remove name="AboMapperCustom-XXXXXXXX" />
    </handlers>
</system.webServer>

с

<system.webServer>
    <handlers>
        <remove name="AboMapperCustom-YYYYYYYY" />
    </handlers>
</system.webServer>

Поиск правильного идентификатора в соответствии с ответом Джоша и исправление тега исправили его, но что более важно, предположительно сохранит отображение этого обработчика от прокрадывания назад.

Ответ 5

У меня была эта проблема, и эта причина была несовместимость между Coldfusion и некоторыми конфигурациями приложений ASP.NET, когда пул приложений IIS находится в интегрированном режиме. Coldfusion необходимо отключить.