ASP.Net MVC Wildcard Mappings IIS 6.0 - Страница не найдена
-
05-07-2019 - |
Вопрос
Я добавил сопоставления с подстановочными знаками на свой веб-сайт в IIS 6.0, чтобы мое приложение MVC работало правильно, но теперь я получаю страницу, которую невозможно найти для каждого запроса. После того, как вставлены сопоставления с подстановочными знаками, я не могу найти созданный мной тестовый html-файл или какой-либо из моих маршрутов.
Сайт работает нормально, когда сопоставления с подстановочными знаками отключены, и я создаю расширение приложения с именем .mvc, которое затем используется в моих маршрутах, однако я предпочел бы не использовать расширение в URL-адресе.
Вот некоторые основные моменты моей установки, сервера и приложения:
Windows Server 2003 с IIS 6.0:
.Net 3.5 SP1
Развертывание Bin для MVC DLL
Сервер имеет несколько сайтов, работающих на нем. Этот конкретный сайт настраивается как собственный сайт (не виртуальный каталог).
Сайт использует формы аутентификации
При настройке сопоставлений подстановочных знаков я не отмечал " проверять, существует ли файл " и сопоставлен с c: \ windows \ microsoft.net \ framework \ v2.0.050727 \ aspnet_isapi.dll.
Решение
Расширения веб-службы, указывающие на framework64. Как только сопоставление по шаблону указывало на правильную папку (framework64 вместо framework), оно работало.
Другие советы
Переписывание URL может помочь вам решить проблему. Я реализовал решение, позволяющее развернуть приложение MVC на любой версии IIS даже при использовании виртуального хостинга. http://www.codeproject.com/KB/aspnet/ МИС-САШ-URL-rewriting.aspx