Развертывание ASP.NET MVC на IIS6: страницы просто пустые - PullRequest
1 голос
/ 24 мая 2010

У меня есть приложение MVC, которое на самом деле находится на паре других серверов, но я не выполнял развертывание. Для этого развертывания я добавил подстановочный знак aspnet_isapi.dll, который избавился от ошибки 404. Но страницы не подтягиваются, скорее все просто пусто. Я не могу найти какие-либо различия в конфигурации IIS. В файле Global asax.cs определена маршрутизация, но, как я видел на работающем сервере, этот файл не просто висит в корне или что-то столь очевидное. Чего мне здесь не хватает?

Все серверы работают под управлением IIS6, и я сравнил настройки, и на данный момент они выглядят одинаково для меня.

Спасибо ... Bryan

РЕДАКТИРОВАТЬ для комментариев до сих пор: Я безуспешно просматривал журналы событий и просматривал различные журналы IIS для каждого Дэвида Вана: blogs.msdn.com .

Ниже приведен файл Global.asax.cs ...

public class MvcApplication : System.Web.HttpApplication
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("error.axd"); // for Elmah

        // For deployment to IIS6
        routes.Add(new Route
        (
            "{controller}.mvc/{action}/{id}",
            new RouteValueDictionary(new { action = "Index", id = (string)null }),
            new MvcRouteHandler()
        ));

        routes.MapRoute(
            "WeeklyTimeSave",
            "Time/Save",
            new { controller = "Time", action = "Save" }
        );

        routes.MapRoute(
            "WeeklyTimeAdd",
            "Time/Add",
            new { controller = "Time", action = "Add" }
        );

        routes.MapRoute(
            "WeeklyTimeEdit",                                              
            "Time/Edit/{id}",                                       
            new { controller = "Time", action = "Edit", id = "" }  
        );

        routes.MapRoute(
            "FromSalesforce",
            "Home/{id}",
            new { controller = "Home", action = "Index", id = "" });

        routes.MapRoute(
            "Default2", 
            "{controller}/{id}",
            new { controller = "Home", action = "Index", id = "" }  
        );

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

    }

    protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);
    }
}

Может быть, это так же глупо, как если бы файл asax не находился где-то там, где он должен быть, но, черт возьми, если я знаю об этом.

1 Ответ

2 голосов
/ 03 июня 2010

Вот основное руководство, которое мне больше всего помогло при развертывании ASP.NET MVC 1.0 на IIS6:

http://www.hanselman.com/blog/DeployingASPNETMVCOnASPNET20.aspx

И так как она как бы подкрепляет всю идею дружественных имен в архитектуре REST, здесь решается проблема расширения имени файла:

Http: / slashflux88DOTcom / блог / с использованием-Asp-сетчатой ​​MVC-на-МИС-6-без-на-MVC-расширение /

Извините за запутанный URL, ТАК ударил меня блокировщиком спама.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...