Проект ASP.NET MVC не запускается под IIS 5.1 в Windows XP SP3

У меня есть проект ASP.NET MVC 2, который отлично работает под Windows 7 и запускается в Windows XP, если я использую Visual Studio Development Server, однако запуск под IIS генерирует ошибку:

Unable to start debugging on the web server

С сообщением

 The specified procedure could not be found

В программе просмотра системных событий ошибок нет.

Если я начинаю без отладки, я получаю «Внутренняя ошибка сервера HTTP 500»

Причина, по которой я запускаю его под IIS, заключается в том, что проект также включает некоторые веб-службы WCF wsHttp, которые используют сертификаты, поэтому VS Development Server не подходит для их размещения.

Я уже видел ссылки на SO, в которых говорится о добавлении сопоставления с подстановочными знаками. Я уже сделал это, как и в Windows Server 2003, где довольно долгое время успешно размещаю ASP.NET MVC RC2.


person codenheim    schedule 06.04.2010    source источник


Ответы (3)


Посмотрим, поможет ли это - возможно, но не идеально:

http://blogs.microsoft.co.il/blogs/dorony/archive/2007/12/15/using-asp-net-mvc-on-iis-5.aspx

person Michael Shimmins    schedule 07.04.2010
comment
Как и во всех этих блогах, сейчас я использую отображение подстановочных знаков в IIS 6. Но проблема не в этом. Сайт даже не запускается под IIS, точка. Просто ошибка HTTP 500. Я даже попробовал новый пустой проект MVC2, и он работает под сервером разработки, но не под IIS. - person codenheim; 07.04.2010
comment
Я видел и делал это в нескольких средах, но по какой-то причине я переборщил и выбрал aspnet_filter.dll вместо aspnet_isapi.dll в этом окне. Это была причина, спасибо. - person codenheim; 07.04.2010

Загляните в этот блог, это может помочь. IIS 6 и ниже не поддерживает маршрутизацию MVC. http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx

person John Hartsock    schedule 07.04.2010

В сообщении об ошибке говорилось, что «процедура не найдена», поэтому я дважды проверил dll ISAPI.

Оказывается, когда я добавил отображение подстановочных знаков в ISAPI, я выбрал aspnet_filter.dll вместо aspnet_isapi.dll. Как только я его переключил, приложение запускается нормально и нормально обслуживает страницы.

person codenheim    schedule 07.04.2010