具有IIS Express奇数重定向行为的MVC 3

时间:2012-08-14 16:01:12

标签: asp.net asp.net-mvc-3 iis iis-express

我有一个简单的MVC 3 webapp,最近一直给我带来麻烦 - 我看不出任何可以帮助我的信息。我一直有两个与他们的行为有关的问题。

在开发中,它在localhost(http:// localhost:53268 /)上正常运行并且适用于索引,但在此之外执行任何操作都会使IIS返回404,忽略任何重定向到应该是正确的URL。

现在,在生产中,它的表现不同。同样,索引页面工作正常,它具有正确的URL,但任何其他页面(通过链接或直接转到URL)重定向到localhost(https:// localhost /)。奇怪的是,对我来说,它应该在开发上工作(给我看看我通常会得到404s时应该看到的东西),但在其他机器上它绝对没有任何东西。

我从一位同时离开的同事那里继承了这一点,但是给了我使用IIS Express从开发方面开始工作的建议。这之前已经在生产中工作,但现在......不是那么多。

修改 global.aspx文件

public class MvcApplication : System.Web.HttpApplication
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new ElmahHandleErrorAttribute());
        filters.Add(new HandleErrorAttribute());
    }

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
        );

    }

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        RegisterGlobalFilters(GlobalFilters.Filters);
        RegisterRoutes(RouteTable.Routes);
    }
}

修改 明白了。事实证明,Web.Config和服务器出现了一些问题。现在工作正常。

0 个答案:

没有答案