Ошибки маршрутизации ASP.NET MVC 2 - PullRequest
0 голосов
/ 10 февраля 2011

После публикации веб-приложения ASP.NET MVC 2 на моем школьном сервере IIS 7.5 я получаю ошибку 403 при начальной загрузке и затем ошибку 404, если я пытаюсь вызвать маршрут, такой как / Home / About / Index

Я даже пытался опубликовать пример приложения ASP.NET MVC 2 по умолчанию, но безуспешно.Похоже, что веб-сервер не выбирает ни один из маршрутов и что он определяет / Home / About / Index как поиск в каталоге.Кто-нибудь еще сталкивался с подобными проблемами?

Я говорил с системным администратором и проверил, включены ли перенаправление HTTP и ошибки HTTP.После просмотра я увидел несколько комментариев о том, что маршрутизация не работает из-за того, что место публикации не является webroot.Любые комментарии о том, почему?

В настоящее время системный администратор имеет следующую структуру каталогов сайта.Может ли это быть проблемой?

  • Веб-сайты по умолчанию
  • Fall2010
  • Class123
  • Class321
Spring2011

Я обратился за помощью к системному администратору и моему профессору, однако оба они не знакомы с MVC и маршрутизацией.Любая помощь приветствуется.

Конечно, я могу просто отказаться от своей идеи и просто использовать веб-формы и SOAP так же, как я делал в других своих классах, но я хотел бы узнать больше о MVC в ASP.NET и ОТДЫХ.Спасибо за помощь!

Ответы [ 3 ]

2 голосов
/ 10 февраля 2011

Похоже, системный администратор перевел пул приложений в классический режим, когда он должен быть интегрирован. В примере приложения ASP.NET MVC 2 по умолчанию я изменил Global.asax на:

routes.MapRoute(
    "Default",
    "{controller}.aspx/{action}/{id}",
    new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

И перешел на /Home.aspx/О, все работало нормально.

Теперь мне просто нужно убедить нашего системного администратора перейти на интегрированный.

Рекомендации: http://server.dzone.com/news/routes-iis-classic-and

РЕДАКТИРОВАТЬ: я смог заставить системного администратора перейти на интегрированный. Кажется, все работает нормально.

1 голос
/ 10 февраля 2011

Если вы используете маршруты по умолчанию, правильный URL должен быть /Home/About. Что касается развертывания приложения ASP.NET MVC на II 7, вы, вероятно, захотите просмотреть следующую запись в блоге .

0 голосов
/ 10 февраля 2011

Может быть, вам нужно настроить IIS для сопоставления подстановочных знаков?Я знаю, что это для IIS 6, но это может относиться и к 7.

http://www.techdreams.org/microsoft/aspnet/how-to-fix-404-errors-of-aspnet-mvc-website-deployed-on-iis-6-windows-server-2003/2572-20090515

...