通过UrlRewriter配置MVC4伪静态

有些项目需要设置静态,这样可以被网站收录了,提高网站的排名、内容。如果地址后面有www.a.com/xx.html?id=1是不行,还是不能达到一些需求,怎么才能实现www.a.com/1/xx.html这样的地址呢?

解决办法就是用一个比较简单方式:UrlRewriter,通过该dll可以实现。这只是一个简单伪静态,真正实现静态页面要通过后台代码生成静态的html页面。

下载地址:UrlRewriter.dll

下载后将下图勾选的红色框加入到项目中,并引用。


第一步:下载UrlRewriter.dll文件,然后引入到mvc的项目里并引用。

(ActionlessForm.dll文件和App_Browsers文件夹选择一个即可,添加了“App_Browsers文件夹”就不需要引用ActionlessForm.dll也不需要改变Form了,只要引用URLRewriter.dll就可以了)


第二步:配置Web.config

            1.在<configuration>里添加: 

[csharp]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <configSections>  
  2.   <section name="CustomConfiguration" type="URLRewriter.Config.UrlsSection, URLRewriter" />  
  3. </configSections>  
            2.在<configuration>里添加:

[csharp]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <CustomConfiguration>  
  2.     <urls>  
  3.       <!--([\w]+)表示,1到n个字母或数字或下划线或汉字组成-->  
  4.       <add virtualUrl="~/Index.html" destinationUrl="~/Home/Index" />  
  5.       <add virtualUrl="~/(\d+)/Detail.html" destinationUrl="~/Home/Detail/?guid=$1" />  
  6.     </urls>  
  7.   </CustomConfiguration>  
            3.在<system.web>里添加:

[csharp]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <httpModules>  
  2.      <add type="URLRewriter.RewriterModule, URLRewriter" name="RewriterModule" />  
  3. </httpModules>  

            4.在<system.webServer>里添加:

[csharp]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <validation validateIntegratedModeConfiguration="false" />  
  2.    <modules runAllManagedModulesForAllRequests="true">  
  3.      <add name="URLRewriter" type="URLRewriter.RewriterModule" preCondition="managedHandler" />  
  4.    </modules>  

配置完Web.config,基本就可以直接访问地址了,如果是发布到IIS7还是要进行配置,具体配置查看如下地址:

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


第三步:mvc的页面的写法如下:

<a href="/@Model.Id/Detail.html">测试</a>   @Model.Id就是传值内容

<a href="/Index.html">首页</a> 


访问地址:http://localhost:80/1/Detail.html   http://localhost:80/Index.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值