码迷,mamicode.com
首页 > Web开发 > 详细

通过UrlRewriter配置MVC4伪静态

时间:2017-06-27 22:09:43      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:简单   划线   tom   地址   request   设置   arc   module   url   

有些项目须要设置静态。这样能够被站点收录了,提高站点的排名、内容。

假设地址后面有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>里加入: 

  <configSections>
    <section name="CustomConfiguration" type="URLRewriter.Config.UrlsSection, URLRewriter" />
  </configSections>
            2.在<configuration>里加入:

<CustomConfiguration>
    <urls>
      <!--([\w]+)表示,1到n个字母或数字或下划线或汉字组成-->
      <add virtualUrl="~/Index.html" destinationUrl="~/Home/Index" />
      <add virtualUrl="~/(\d+)/Detail.html" destinationUrl="~/Home/Detail/?guid=$1" />
    </urls>
  </CustomConfiguration>
            3.在<system.web>里加入:

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

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

 <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true">
      <add name="URLRewriter" type="URLRewriter.RewriterModule" preCondition="managedHandler" />
    </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

通过UrlRewriter配置MVC4伪静态

标签:简单   划线   tom   地址   request   设置   arc   module   url   

原文地址:http://www.cnblogs.com/cxchanpin/p/7087196.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!