404 - ASP.NET MVC中找不到的文件或目录

时间:2016-03-16 13:10:18

标签: asp.net-mvc

我正在开发一个MVC Web应用程序。在本地测试

当我在托管服务器中部署此Web应用程序

时,

http://localhost:28847/Place/Malaysia完美无缺

http://videeows.com/Place/Malaysia 我收到404 - 找不到文件或目录。

该应用程序部署在服务器的asp.net 4.5版中。 什么可能出错?

机器中部署了其他MVC网站,效果很好。 我的MVC只是一个重定向。

http://videeows.com/Place/Malaysia这将重定向到http://videeows.com/Place.aspx?s=Malaysia&q=Coun

http://videeows.com会指向http://videeows.com/default.aspx

我的routeconfig是:

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

        routes.MapRoute(
    name: "Place",
    url: "Place/",
    defaults: new { controller = "Place", action = "Index" }
    );

        routes.MapRoute(
            name: "PlaceByCountry",
            url: "Place/{country}",
            defaults: new { controller = "Country", action = "IndexByCountry", country = "" }
            );

        routes.MapRoute(
           name: "Default",
           url: "{controller}/{action}/{id}",
           defaults: new { id = UrlParameter.Optional });
    }

3 个答案:

答案 0 :(得分:0)

这不太可能是ASP .NET MVC代码的问题。它必须与您设置服务器的方式有关。虽然很难说它是什么。确保您的应用程序池支持您正在使用的.NET版本等。

答案 1 :(得分:0)

检查您正在使用的IIS服务器设置和应用程序池。只需触发并检查http://localhost:8080/ IIS是否正常工作 确保您的应用程序池支持您正在使用的.NET版本。

答案 2 :(得分:0)

我遇到了同样的问题:对于某些页面,我收到了404错误消息。实际上,服务器不会将URL的最后部分视为“id”,而是将文件夹名称视为。确实这个文件夹不存在。我认为当链接只是调用RedirectToAction到另一个函数时会发生这种情况......

解决方案可以是,而不是使用:

AreaName/ControllerName/FunctionName/IdReference 

使用

AreaName/ControllerName/FunctionName?Id=IdReference