在虚拟主机上发布的MVC程序路由有问题 可以参看 http://www.cnpowershell.net (非广告)只有首页可以访问,其它页面都是无法找到该页请高手指点,谢谢!具体设置是参考 http://www.cnblogs.com/sonven/archive/2009/11/02/composite_AspNet_MVC.html 

解决方案 »

  1.   

    我也碰到这种情况,还没搞定~~请懂MVC的高手指点~谢谢!
      

  2.   

    贴出你global文件的路由规则?
      

  3.   

    using System;
    using System.Collections.Generic;
    using System.Web;
    using System.Web.Mvc;
    using System.Web.Routing;
    using PowerShell.Codes;
    namespace PowerShell
    {
        // Note: For instructions on enabling IIS6 or IIS7 classic mode, 
        // visit http://go.microsoft.com/?LinkId=9394801    public class MvcApplication : System.Web.HttpApplication
        {
            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 = "" }  // Parameter defaults
                );        }        protected void Application_Start()
            {
               
                ViewEngine engine = new ViewEngine();
                engine.IsTrace = true;              //是否显示请求信息,发布时候请删除此行
                ViewEngines.Engines.Add(engine);            RegisterRoutes(RouteTable.Routes);
            }
        }
    }
      

  4.   

    欢迎各位加入ASP.NET MVC框架超级群!让我们共同学习、进步!QQ群号:40985466 非常乐意为大家提供一个良好的交流平台!
      

  5.   

     new { controller = "Home", action = "Index", id = "" }action=“页面” 改成你要运行的页面就可以了
      

  6.   

    欢迎各位加入ASP.NET MVC框架超级群!让我们共同学习、进步!QQ群号:40985466 非常乐意为大家提供一个良好的交流平台!
      

  7.   

    有可能是IIS的版本问题,好像IIS 5.1是不支持wild card的,需要自己定义一个扩展名,如.mvc,在iis上将mvc扩展名和mvc的httphandler建立关联,然后把路由修改为:
               routes.MapRoute(
                    "Default",                                              // Route name
                    "{controller}.mvc/{action}/{id}",                           // URL with parameters
                    new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
      

  8.   

    要想确认是否是因为虚拟主机的问题(MVC人品不会这么坏,应该是人的问题),首先要确认一下在你的开发环境中是否正常
      

  9.   

    估计和你的IIS版本有关,如果低于7.0,请参考这篇文章来配置:http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx我的站 webdiyer.com 用的是IIS 7,所以不存在问题,你可以访问看看。