Назад | Перейти на главную страницу

Развертывание приложения ASP.Net MVC 4 в IIS 6 - пакеты не работают

У нас есть приложение ASP.Net MVC 4, которое мы пытаемся развернуть на машине с Windows 2003, на которой работает IIS 6. У нас оно работает в отдельном пуле приложений и настроено на использование asp.net 4.0. У нас есть сопоставление приложения подстановочного знака с aspnet_isapi.dll, которое требуется для отображения страницы.

Проблема, с которой мы столкнулись, заключается в том, что пакет, который является частью asp.net mvc 4, не работает. Когда вы пытаетесь перейти по ссылке / js? V = ASDfljkFSDlkjDSF, вы получаете ответ 404.

Мы знаем, что он использует URL-адреса без расширений, но они должны обрабатываться сопоставлением приложения Wildcard, если я не ошибаюсь?

У кого-нибудь это работает или есть идеи?

Я знаю, что это было некоторое время назад, но у меня была эта проблема в приложении веб-форм с использованием таблиц пакетов. Он работал как собственный сайт, а не в виртуальном каталоге. IIS понятия не имел, где взять пакеты (как сказал ShaneC).

В свойствах виртуального каталога -> Конфигурация -> Сопоставления я вставил запись с подстановочными знаками в «C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_isapi.dll» и снял флажок, чтобы убедиться, что файл существует.

Это сработало для меня.

Проблема заключалась в том, что мы работали как виртуальный каталог, настроенный для ASP.Net 4.0, на веб-сайте по умолчанию, который был настроен для ASP.Net 2.0.

Мы создали новый веб-сайт и установили для него asp.net 4.0, и все работало отлично. Согласно этому сообщению на Haacked URL-адреса без расширений теперь должны работать в большинстве экземпляров IIS 6.

IIS6 не будет знать, какие обработчики будут обслуживать запрос URL-адреса расширения, например /js?blahblahblah, поэтому он предполагает, что файл статический, ищет его, не может найти и возвращает 404.

Проверять, выписываться эта почта для обходного пути