Как заставить Elmah работать с ASP.NET и маршрутизацией URL-адресов IIS 5.1

StackOverflow https://stackoverflow.com/questions/982267

Вопрос

У меня возникли проблемы с запуском приложения ASP.NET MVC через локальный веб-сервер IIS 5.1.Я считаю, что эти проблемы связаны с IgnoreRoutes, но я не могу создать IgnoreRoute, который бы решил проблему.

Проблема:

Я могу просмотреть страницу ошибок elmah (localhost/mvcapplication1/elmah.axd), однако CSS отсутствует и ни одна из ссылок не работает.

Действия по воспроизведению

1) Создайте приложение ASP.NET MVC 1.0.

2) Добавьте Эльму.Загрузите сборки, добавьте их в свой проект и следуйте инструкциям из Инструкции по настройке Elmah

3) Переключите приложение на «Использовать локальный веб-сервер IIS» на страницах свойств -> Интернет.

4) Добавьте сопоставление подстановочных знаков.То есть откройте IIS, перейдите в Свойства -> Виртуальный каталог -> Конфигурация -> Добавить:Исполняемый файл:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll Расширение:.* Ограничено до:GET, HEAD, POST, DEBUG Снимите флажок «Проверить, что файл существует».

5) Убедитесь, что routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); существует в RegisterRoutes вашего Global.aspx.Кстати, я тоже пробовал routes.IgnoreRoute("elmah.axd");

Сейчас..запустите приложение и откройте localhost/mvcapplication1/elmah.axd.

Никакой CSS и ссылки не работают.

Если я удалю сопоставление подстановочных знаков, все будет в порядке, но тогда маршрутизация URL-адресов приложения больше не будет работать.Я это понимаю, но я смогу получить файл elmah.axd с правильной схемой IgnoreRoute.

Мысли??

Это было полезно?

Решение

Добавьте модуль FixIIS5xWildcardMapping в свой web.config:

<httpModules>
    <add name="FixIIS5xWildcardMapping" type="Elmah.FixIIS5xWildcardMappingModule, Elmah"/>
</httpModules>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top