zoukankan      html  css  js  c++  java
  • URl重写 != URL伪静态

    市面上有很多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>  下配置

    Code

    进行过滤

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

    Code

    这样就完成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伪静态对服务器的开销不小咯,另外的一个解决方案就是生成静态页,不过如果是平台型的网站数据量很大,建议还是用伪静态吧,毕竟十几万个页面生成下来,对磁盘的开销也不小了,并且容易造成冗余文件。

  • 相关阅读:
    宿主机( win 7 系统) ping 虚拟机VMware( cent os 6.6 ) 出现“请求超时”或者“无法访问目标主机”的解决方法
    Java实现 LeetCode 23 合并K个排序链表
    Java实现 LeetCode 23 合并K个排序链表
    Java实现 LeetCode 23 合并K个排序链表
    Java实现 LeetCode 22 括号生成
    Java实现 LeetCode 22 括号生成
    Java实现 LeetCode 22 括号生成
    Java实现 LeetCode 21 合并两个有序链表
    Java实现 LeetCode 21 合并两个有序链表
    Java实现 LeetCode 21 合并两个有序链表
  • 原文地址:https://www.cnblogs.com/javabin/p/1538508.html
Copyright © 2011-2022 走看看