urlrewrite 怎么使用啊?有具体的代码吗

百思软件工作室 2009-04-08 09:32:47
urlrewrite 怎么使用啊?
有具体的代码让我瞧瞧吗
...全文
185 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dzwebs 2009-04-18
  • 打赏
  • 举报
回复
来找我,我会QQ83539231
luobing261314 2009-04-18
  • 打赏
  • 举报
回复
看看!
  • 打赏
  • 举报
回复
http://download.csdn.net/source/1222359
ISAPI_Rewrite的下载地址
  • 打赏
  • 举报
回复
本人从网上搜索到了一段代码
是用ISAPI_Rewrite来实现的

由于项目用到了ISAPI_Rewrite,为了响应政府号召,粗略的学习了一下网上的相关文章,其实也没有什么难的,一种工具而已。不过关于正则的部分并不是我所编写的,也谈不上什么体会,值得注意的一些东西还是留下为好。
原理:其实URL重写并不如何高深,当服务器接受到一个http请求,请求访问其上的文件时,先通过Rewrite对该地址进行重写,然后载入重写后的地址,进行解析。这样当你访问时,并没有直接到达这个文件,而是这个地址,在服务器那里被换掉了,而这个换掉的过程,对客户端而言是隐蔽的,不可知的。
比如,有个实际文件名为abc.aspx,而我们通过规则把它转义为abc.html(当然,可以附带自定义规则的参数,如原abc.aspx?id=1,转义为abc-1.html),当我们地址栏输入abc.html即可通过服务器转解析到abc.aspx上,起到偷梁换柱的效果。
至于这样做的理由,不言而喻,都是为了SEO优化,让搜索引擎更顺畅的抓取网站内容。
配置过程:
1. 下载ISAPI_Rewrite.ISAPI_Rewrite
2. 对筛选对应规则进行编写,即httpd.ini 文件(见上面)
进入刚才安装ISAPI_Rewrite的文件夹里面,找到httpd.ini这个文件,然后在属性上去掉“只读”,然后这里有点难了,需要使用正则表达式来实现了,方法很多,我举个例子希望对大家有所帮助,比如我想要把www.xx.com/web/new.aspx?id=1 改成 www.xx.com/web/new/1.html这样的URL,需要增加一条正则表达式 RewriteRule ^(.*)/web/new/([0-9]+)\.html$ $1/web/new\.aspx\?id=$2

3. 打开Internet 信息服务,右键,web站点属性,点击ISAPI筛选器选项卡.添加筛选器,名称自己填,路径自己指定ISAPI_Rewrite.dll,然后确定.
4. 重启iis服务器,开始->运行->cmd (以下列出相关操作命令)
iisreset /RESTART 停止后启动
iisreset /START 启动IIS (如果停止)
iisreset /STOP 停止IIS (如果启动)
iisreset /REBOOT 重启电脑
iisreset /REBOOTonERROR 如果停止IIS失败重启电脑
iisreset /NOFORCE 不用强迫IIS停止
iisreset /TIMEOUT:X 在X秒后,IIS被强制停止,除非 /NOFORCE 参数给出.
5. 最后,输入解析后地址,测试结果。
还有在WIN2003里面使用方法,在IIS 6.0里面一直提示“未加载”,后来查了又查,原来是文件的权限问题。IIS 6.0 ISAPI_Rewrite 是在Service帐号下运行的,将数据文件的读写权限给予Service 帐号后,ISAPI_Rewrite 终于可以正常运行了。
设置软件安装目录的IIS_WGP组的读写权限(重要,如果不设置安装完后你的网站就会直接Service Unavailable,无法访问)。
ZKM_ZHANG 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 niitnanfeng 的回复:]
没什么,很简单。在配置文件里需要配置下就是。你可以去网上找找,好像51aspx里曾经有。
[/Quote]

既然很简单就写出来看看
niitnanfeng 2009-04-08
  • 打赏
  • 举报
回复
没什么,很简单。在配置文件里需要配置下就是。你可以去网上找找,好像51aspx里曾经有。

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧