URl重写 != URL伪静态

本文介绍如何通过web.config文件实现URL重写与伪静态,包括直接映射与正则匹配方法,以及IIS配置步骤。对于提高网站SEO友好性和用户体验有一定帮助。

市面上有很多URL重写的例子,有第三方的,有直接配置的,五花八门,在使用的时候请一定要考虑性能,我也来搅搅这趟浑水咯
我理解中的URL重写是:
在web.config文件<system.web>下配置

    < urlMappings >
      
< add url = " ~/index.asp "  mappedUrl = " ~/default.aspx " />
    
</ urlMappings >

运行后在地址栏输入index.asp会跳转到default.aspx页面,这个我称之为URL重写,这种方式是不需要进行IIS配置的,缺点是无法进行正则表达式的验证,使用面就狭窄了许多

URL伪静态就是:
第一,引用URLRewriter.dll
第二,在web.config文件<configSections>节点下配置

< section name = " RewriterConfig "  type = " URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter "   />

进行URL规则的匹配接点声明
第三,<system.web>  下配置

ContractedBlock.gif ExpandedBlockStart.gif Code
 <httpHandlers>
      
<add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
      
<add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
 
</httpHandlers>
    
<httpModules>
      
<add type="URLRewriter.ModuleRewriter, URLRewriter" name="ModuleRewriter" />
    
</httpModules>

进行过滤

第四,
<configuration>节点下,声明需要匹配URL的规则,例如:

ContractedBlock.gif ExpandedBlockStart.gif Code
  <RewriterConfig>
    
<Rules>
      
<RewriterRule>
        
<LookFor>~/room/(\w+).mooloo</LookFor>
        
<SendTo>~/room/home.aspx?id=$1</SendTo>
      
</RewriterRule>
    
</Rules>
  
</RewriterConfig>

这样就完成URL伪静态的工作,如果要发布到服务器上还需要配置IIS
IIS5.1:虚拟目录 == 配置 == 添加 == 可执行文件:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 扩展名 : .*  限制为:POST,GET 检查文件是否存在不勾选
IIS6.0:主目录 == 配置 == 插入 == 可执行文件:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll == 确认文件是否存在不勾选

第三方的和URL伪静态原理一样,推荐一个感觉不错的http://www.urlrewriter.cn/
使用URL伪静态对服务器的开销不小咯,另外的一个解决方案就是生成静态页,不过如果是平台型的网站数据量很大,建议还是用伪静态吧,毕竟十几万个页面生成下来,对磁盘的开销也不小了,并且容易造成冗余文件。

转载于:https://www.cnblogs.com/javabin/archive/2009/08/04/1538508.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值