Настройка корневого URL-адреса в IIS7 для asp.net mvc 2

У меня немного странный вопрос. Я создаю мультитенантный веб-сайт с Asp.net MVC 2 и запускаю его на IIS7. Я пытаюсь правильно настроить среду разработки для тестирования, но у меня возникла странная проблема.

Я создал веб-сайт в IIS и указал каталог на местонахождение моего исходного кода. У меня есть только базовый HomeController вместе с настройкой просмотра индекса. У меня есть привязка в IIS на моем веб-сайте (и настройка в моем файле hosts) для www.mydomain.com (это так, чтобы я мог протестировать многопользовательский материал).

Когда я запускаю сайт и перехожу на www.mydomain.com/home или www.mydomain.com/home/index, все работает нормально. Но при переходе на www.mydomain.com открывается страница с логотипом IIS7. Есть ли что-то особенное, что мне нужно настроить, чтобы корневой URL-адрес отображал домашнюю/индексную страницу по умолчанию?


person Micah    schedule 28.02.2010    source источник


Ответы (2)


Вам нужно настроить маршрут следующим образом:

routes.MapRoute("home", "",
   new { controller = "home", action = "index" });

или это:

routes.MapRoute("home", "{action}",
   new { controller = "home", action = "index" });
person Max Toro    schedule 28.02.2010
comment
@Micah Ну, я не говорил, что это единственное, что вам нужно сделать, но это самый важный первый шаг, если у вас нет маршрута, соответствующего URL-адресу, MVC никогда не обработает его. Если у вас не было этого маршрута, то я рад сообщить, что помог. - person Max Toro; 28.02.2010

Ваше приложение должно работать в режиме интегрированного конвейера IIS7. В противном случае вам понадобится этот default.aspx из стандартного шаблона проекта ASP.NET MVC 1.

person Çağdaş Tekin    schedule 28.02.2010
comment
Он настроен на использование интегрированного конвейера, но все еще не работает. - person Micah; 01.03.2010
comment
@Micah В таком случае, возможно, вам следует опубликовать свои маршруты в вопросе. Это может помочь решить проблему. - person Çağdaş Tekin; 01.03.2010