用isapi rewrite实现asp的HTML静态化
2008-12-11 10:37:04 来源:WEB开发网asp网站程序在国内运用很广,但是类似于im286.asp?id=20050307213811这样的url有点不利于搜索引擎的收录,也就是说不符合友好url(urls-friendly)的标准,那么我们用isapi_rewrite打造一个clean url,让蜘蛛欢欢喜喜的来爬你的站吧。
废话不多说,开工!
1、下载isapi_rewrite.isapi_rewrite分精简(lite)和完全(full)版.精简版不支持对每个虚拟主机站点进行重写,只能进行全局处理。不过对于有服务器的朋友,精简版也就够啦。精简版下载地址:http://www.helicontech.com/download/,就是那lite version (free)啦。
2、安装.msi的文件,和装一般程序一样装就可以了,俺就装在d:\isapi_rewrite。
3、接下来一步比较重要哦,看仔细喽.打开internet 信息服务,右键,web站点属性,电isapi筛选器选项卡.添加筛选器,名称自己填,路径自己指定isapi_rewrite.dll,然后确定。
4、来测试一下。新建一个1ting.asp,里面写上<%=request.querystring("inso")%>,效果就是执行的时候1ting.asp?inso=*浏览器显示*。
5、这一步很重要哦,开始添加rewrite规则.正则,好头痛,幸亏这个例子比较简单。
找到isapi_rewrite目录,把httpd.ini的只读属性去掉,打开编辑.我们要把1ting.asp?inso=im286映射成为1ting-im286.html这样的类型,需要在httpd.ini里加上这么一行:rewriterule /1ting-([0-9,a-z]*).html /1ting.asp\?inso=$1,保存。
6、来来来,到浏览器里查看一下效果吧。输入http://127.0.0.1/1ting.asp?inso=im286和http://127.0.0.1/1ting-im286.html,显示的内容是不是都是im286?这就证明成功啦!
嘿嘿,1ting-im286.html这样的页面要比1ting.asp?inso=im286容易收入,所以现在还在用动态方式的朋友可以尝试一下这样的静态映射效果. iis rewrite也可以实现这样的功能。
后话:这个可行性可能不是太强,俺只是从纯技术的角度来讨论,表拍我砖啊,上次的伤还没养好呢。
赞助商链接