为什么要配置伪静态?
可以提升百度的收录量,增强SEO,也是SEO优化的一种方式。
具体可以了解一下搜索引擎的爬虫工作原理。
通过UrlRewriter在MVC4中配置伪静态在网上都有很多资料,本篇博客主要是把项目中使用到的通过UrlRewriter配置伪静态提取出来,方便自己以后查看,同样对需要该功能的网友提供思路。
第一:下载UrlRewriter.dll文件,并引用到项目中
第二:配置Web.config
依次在下面节点中添加UrlRewriter相关的子节点
   
     
   
 
第三:配置RouteConfig.cs
public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
 
            routes.MapRoute(
               "Action1Html", // action伪静态  
               "{controller}/{action}.html",// 带有参数的 URL  
               new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
           );
            routes.MapRoute(
               "IDHtml", // id伪静态  
               "{controller}/{action}/{id}.html",// 带有参数的 URL  
               new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
           );
 
            routes.MapRoute(
                "ActionHtml", // action伪静态  
                "{controller}/{action}.html/{id}",// 带有参数的 URL  
                new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
            );
 
            routes.MapRoute(
                "ControllerHtml", // controller伪静态  
                "{controller}.html/{action}/{id}",// 带有参数的 URL  
                new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
            );
            routes.MapRoute(
               "Root",
               "",
               new { controller = "Home", action = "Index", id = UrlParameter.Optional });//根目录匹配  
 
            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
        }
    }