朱浩亮

导航

ASP.NET MVC4通过UrlRewriter配置伪静态,支持html后缀

ASP.NET MVC4通过UrlRewriter配置伪静态

通过UrlRewriter在MVC4中配置伪静态在网上都有很多资料,本篇博客主要是把项目中使用到的通过UrlRewriter配置伪静态提取出来,方便自己以后查看,同样对需要该功能的网友提供思路。

第一:下载UrlRewriter.dll文件,并引用到项目中

第二:配置Web.config

依次在下面节点中添加UrlRewriter相关的子节点

 

1.  <configSections>  

2.  <section name="CustomConfiguration" type="URLRewriter.Config.UrlsSection, URLRewriter"/>  

3.  </configSections>  

 

1.  <system.web>  

2.      <httpModules>  

3.        <add type="URLRewriter.RewriterModule, URLRewriter" name="RewriterModule"/>  

4.      </httpModules>  

5.    </system.web>  

 

1.  <system.webServer>  

2.      <modules runAllManagedModulesForAllRequests="true">  

3.        <add name="URLRewriter" type="URLRewriter.RewriterModule" preCondition="managedHandler"/>  

4.      </modules>  

5.    </system.webServer>  


第三:配置RouteConfig.cs

 

1.  public static void RegisterRoutes(RouteCollection routes)  

2.          {  

3.              routes.IgnoreRoute("{resource}.axd/{*pathInfo}");  

4.    

5.              routes.MapRoute(  

6.                 "Action1Html", // action伪静态    

7.                 "{controller}/{action}.html",// 带有参数的 URL    

8.                 new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值    

9.             );  

10.             routes.MapRoute(  

11.                "IDHtml", // id伪静态    

12.                "{controller}/{action}/{id}.html",// 带有参数的 URL    

13.                new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值    

14.            );  

15.   

16.             routes.MapRoute(  

17.                 "ActionHtml", // action伪静态    

18.                 "{controller}/{action}.html/{id}",// 带有参数的 URL    

19.                 new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值    

20.             );  

21.   

22.             routes.MapRoute(  

23.                 "ControllerHtml", // controller伪静态    

24.                 "{controller}.html/{action}/{id}",// 带有参数的 URL    

25.                 new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值    

26.             );  

27.             routes.MapRoute(  

28.                "Root",  

29.                "",  

30.                new { controller = "Home", action = "Index", id = UrlParameter.Optional });//根目录匹配    

31.   

32.             routes.MapRoute(  

33.                 name: "Default",  

34.                 url: "{controller}/{action}/{id}",  

35.                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }  

36.             );  

37.         }  

38.     }  

 

第四:配置IIS

在IIS中新建网站(端口号8111)

      直接运行http://localhost:8111/

    错误截图

 

image.png

 

配置方法:

image.png

 

 

二、添加通配符脚本映射,选择:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

image.png

 

三、找到和网站相对的连接池,选择framework 4.0  经典模式

image.png

image.png

 

 

四、选择应用程序连接池,高级设置,启用32位应用程序,设为true

image.png

 

我的个人简介:http://www.chinaebei.com/condition/Cond/35.html

我的更多信息:http://www.chinaebei.com/condition.html

 

参考文章:

ASP.NET MVC4通过UrlRewriter配置伪静态

http://blog.csdn.net/just_shunjian/article/details/51132866

.NET4.0下网站应用程序用UrlRewriter.dll重写无后缀路径 (在IIS7.5中的配置方法)

http://www.cnblogs.com/zhongweiv/archive/2011/10/29/UrlRewriter_IIS.html

posted on 2018-04-20 11:51  朱浩亮  阅读(623)  评论(1编辑  收藏  举报