#c# #iis #asp.net-mvc-3
#c# #iis #asp.net-mvc-3
Вопрос:
После создания проекта веб-приложения в VS2010, добавления маршрута маршрутизации и запуска в режиме отладки маршрутизация, похоже, работает должным образом, и у меня нет проблем.
Но когда я попытался развернуть его на IIS7.5 на своем локальном компьютере и попытался щелкнуть ссылку, использующую маршрутизацию, она выдает: «Ошибка HTTP 404.0 — Не найден, ресурс, который вы ищете, был удален, его имя изменено или временно недоступен».
Кто-нибудь сталкивался с такой же проблемой?
Комментарии:
1. Можете ли вы опубликовать какой-нибудь пример кода?
2. @czetsuya, у меня тоже эта проблема, и я весь день рвал на себе волосы, не находя решения на сайте.
Ответ №1:
Похоже, вам не хватает модуля для маршрутизации URL.
- Перейдите на сайт в IIS
- Нажмите на Модули
- Найдите модуль типа System.Web.Routing.UrlRoutingModule (в моем IIS имя UrlRoutingModule-4.0)
- Если вы не можете найти его, нажмите «Добавить управляемый модуль» и вставьте информацию на последнем шаге. Также установите флажок.
Я надеюсь, что это поможет. Если проблема не в этом, проверьте, работаете ли вы в интегрированном режиме (посмотрите на пул приложений для этого приложения).
Комментарии:
1. Спасибо за ответ, теперь это работает, я удалил и создал новый виртуальный каталог, но не в интегрированном режиме. Не совсем уверен, что я сделал не так с первой попытки.
2. У меня такая же проблема, но у меня установлен модуль маршрутизации. Мне не нужно было ее устанавливать, она всегда была там.
3. Это не было установлено по умолчанию в IIS 8 в Windows 2012.
Ответ №2:
Я смог решить эту проблему и документировать, как я это сделал, здесь:
http://czetsuya-tech.blogspot.com/2011/06/how-to-deploy-mvc3-powered-website-to.html