URLRewriter最简单入门介绍 URLRewriter相关资源
1. urlrewriter 相关资源:
http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/msdnurlrewriting.msi
2. urlrewriter 二级域名的实现:
3. 适用场合 iis相关配置:
配置好后,查看日志看到的状态都是200,iis直接认为这个文件是存在的了,
而不是301,或302,这在某些情况下可能会不适用,比如:搜索引擎优化时目录或文件调整。
默认只支持.net格式的重定向 比如:.aspx格式的重定向。
如:show_12_yongfa365.aspx --> show.aspx?id=12&name=yonga365
如果想实现,*.html这样的格式(一般我们就用这种方法实现.net 伪静态)
如:show_12_yongfa365.html --> show.aspx?id=12&name=yonga365
得在站点里加上相关“应用程序扩展”
添加方法:右击相关站点-->属性-->主目录-->配置-->映射-->
在里面找到扩展名是.aspx的记录,双击,复制里面的可执行文件里的内容,关闭
回到了应用程序配置里,点添加,粘贴刚才复制的地址,扩展名里输入".html",把“确认文件是否存在”的勾去掉。
ok,iis上相关配置就配好了。
4.下载相关文件:
请从此下载urlrewriter组件。安装,把安装目录下里的 urlrewriter.dll copy 到你的项目 bin 目录下。
5.配置 web.config:
在<configuration>标签里加上:
<configsections>
<section name="rewriterconfig" type="urlrewriter.config.rewriterconfigserializersectionhandler, urlrewriter" />
</configsections>
<!--urlrewriter重写规则,不会正则表达式的到网上找找,柳永法当时在车上两小时看完相关文档,感觉就看会了。-->
<rewriterconfig>
<rules>
<rewriterrule>
<lookfor>~/(\d+).aspx</lookfor>
<sendto>~/default.aspx?page=$1</sendto>
</rewriterrule>
</rules>
</rewriterconfig>
在<system.web>标签里加上:
<httpmodules>
<add type="urlrewriter.modulerewriter, urlrewriter" name="modulerewriter" />
</httpmodules>
<!--
<httphandlers>
<add verb="*" path="*.aspx" type="urlrewriter.rewriterfactoryhandler, urlrewriter" />
<add verb="*" path="*.html" type="urlrewriter.rewriterfactoryhandler, urlrewriter" />
</httphandlers>
-->
6. 加入窗体回传保持的组件:
如果你的页面有回传。比如说放了datagrid 或 gridview等,有分页的会出问题,解决方法:
在原来你下载的项目里找到 actionlessform.dll 放到你的项目 bin 目录下。
然后在你的这个页面中加入:
<%@ register tagprefix="skm" namespace="actionlessform" assembly="actionlessform" %>
再把你的<form...>改为:
<skm:form id="你的表单名" method="post" runat="server">
.....
</skm:form>