站内搜索  

哈尔滨百姓网首页 | 操作系统 | 软件应用 | 平面设计 | 程序开发 | 硬件维护 | 网络安全
 您的位置: 哈尔滨百姓网 > 电脑网络 > 程序开发 > 阅读文章:Asp伪静态的实现及URL重写-用ISAPI_Rewrite实现Asp的静态化
Asp伪静态的实现及URL重写-用ISAPI_Rewrite实现Asp的静态化
2009-8-6 15:07:08 哈尔滨百姓网 来源:宾县百姓网-收集 浏览 次 【 】【打印】【关闭

 

用ISAPI_Rewrite实现asp的静态化

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,然后确定.
Click here to open new windowCTRL+Mouse wheel to zoom in/out

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也可以实现这样的功能。

------------------------------------------------------

ASP之URL重写

下载ISAPI_Rewrite解压到任意文件夹安装,给IIS用户读取权限,在IIS右键点击一个站点,属性,ISAPI筛选器,添加,筛选器名称一定得叫 re,可执行文件就点浏览找到你解压的目录Rewrite.dll加上即可。

  重启IIS后应该就能支持URL重写规则了。

  需要修改解压目录中的httpd.ini这个文件

RewriteRule /info_(\d+)\.htm /info\.asp\?id=$1 [N,I]

这句话就可以把提交的地址http://www.xxx.com/info_122.htm映射到真正的地址 http://www.xxx.com/info.asp?id=122

如果你在处理数据翻页,那么写法是:

More_<%=Page%>_<%=type%>.html (注:page是翻页页数,type是数据类型)
表现形式:More_1_95.html

如果翻下一页,则为:More_2_95.html,继续下一页的循环,则是:
More_3_95.html,以此类推。

不过你需要在httpd.ini文件中增加以下代码:
RewriteRule /More_(\d+)_(\d+)\.html /jsp/more\.jsp\?page=$1&type=$2 [N,I]

如果你的动态程序有多个参数需要传递,那么就增加多个(\d+)即可,如下:

RewriteRule /More_(\d+)_(\d+)_(\d+)\.html /jsp/more\.jsp\?page=$1&type=$2&type2=$3 [N,I]

翻页处理表现形式是:More_1_95.html

如果想把http://www.xxx.com/info.asp?id=50#abc 转换成静态的网页
因为#abc是程序处理了ID=50这个变量生成静态页面之后按锚点又做了一次页内链接,所以应该这么做映射
http://www.xxx.com/info.asp?id=50#abc转换成http://www.xxx.com/info_50.htm#abc,重写规则如下:
RewriteRule /info_(\d+)\.htm#(\d+) /info\.asp\?id=$1#$2 [N,I] 

注意:以前在Window 2000 IIS5.0一直使用ISAPI_Rewrite进行动态链接重写HTML静态网址,
  
  最近升级到 Widnows 2003 IIS6.0 后,发现ISAPI_Rewrite根本运行不起来,在IIS 6.0里面一直提示“未加载”,后来查了又查,原来是文件的权限问题。
  
  IIS 6.0 ISAPI_Rewrite 是在Service帐号下运行的,将数据文件的读写权限给予Service 帐号后,ISAPI_Rewrite 终于可以正常运行了。

[责任编辑:佚名]
 相关文章
·CSS布局方法的十八般技巧和兼容方案 (2009-11-13 17:14:48)
·利用Google给自己的网站加上投票功能 (2009-10-13 12:32:39)
·您试图在此 Web 服务器上访问 (2009-8-13 14:20:12)
·巧用ASP脚本命令重启服务器 (2009-8-6 15:05:39)
·Dreamweaver CS3网页制作之CSS布局 (2009-7-1 16:07:45)
·网页设计经验和技巧总结 (2009-7-1 16:03:12)
·网页优化必须做的26件事情 (2009-7-1 16:00:36)
·把数据库结构显示出来的源代码 (2009-4-17 9:55:16)
·插入记录后马上得到自动编号值(Access库) (2009-4-17 9:54:33)
·全面解决--如何获得刚插入数据库的记录的 (2009-4-17 9:53:29)
·ASP计算两个时间之差的函数 (2009-4-17 9:52:11)
·一个通用数据库显示程序,能调任意库,任意 (2009-4-17 9:50:33)
·技巧:ASP开发中存储过程应用全接触 (2009-4-17 9:48:31)
·网站简体繁体转换代码 (2009-4-17 9:44:15)
·ASP导出Excel数据的四种方法 (2009-4-17 9:42:14)
·利用网页监听,实现内容中的图片由滚轮控 (2009-4-17 9:37:21)
·html操作本地数据库 (2009-4-17 9:33:18)
·Access中使用Create Procedure创建 (2009-4-17 9:31:08)
·asp实现同网站不同目录绑定不同域名 (2009-4-17 9:27:57)
 热门文章 哈尔滨电脑
·安全防护策略-打造堡垒主机
·SQL Server到底需要使用哪些端口?
·把重要的Word 2003文档放到菜单中
·您试图在此 Web 服务器上访问的 
·Photoshop制作火焰的神龙
·Win2003架设多用户隔离Ftp服务器
·XP系统服务恢复批处理
·还有2天发布 Windows7必备77条小知识
·情侣玩儿法:用虚拟硬盘打造坚不可摧的影子系统
·用U盘当钥匙 轻松绕过WinXP的登陆密码
·Photoshop打造漂亮的心形挂链壁纸
 推荐文章 哈尔滨电脑
·精简节约!小公司办公打印省钱全攻略
·CSS布局方法的十八般技巧和兼容方案
·三种方法 教你解决输入法不显示的问题
·当红情侣QQ表情:茉莉和龙井
·Win 7出现休眠Bug 微软提供解决方案
·将Powerpoint文档转换为Word文档
·非常实用来学习连续供墨系统入门知识
·怕吃亏?怕假的?鉴别真假耗材的小窍门
·情侣玩儿法:用虚拟硬盘打造坚不可摧的影子系统
·开始—运行(cmd)命令大全
·您试图在此 Web 服务器上访问的 
 最新文章 哈尔滨电脑
·Web服务器如何避免CC攻击
·SQL Server到底需要使用哪些端口?
·XP系统服务恢复批处理
·局域网遭ARP攻击网络掉线批处理
·CISCO 2811 路由器配置命令全集
·避免“悲剧” 打印机使用技巧全面攻略
·保障远程桌面Web连接安全四项注意
·教你六招处理服务器数据意外丢失
·挑选相纸有学问 教你如何辨别相纸优劣
·精简节约!小公司办公打印省钱全攻略
·CSS布局方法的十八般技巧和兼容方案