zoukankan      html  css  js  c++  java
  • URLRewrite初试

    URL 重写是截取传入 Web 请求并自动将请求重定向到其他 URL 的过程。
    使用这种技术的原因:有个牛人说过,将动态网页链接rewriting成静态链接是最保险和稳定的面向搜索引擎优化方式,再则,让你的地址栏里面的内容更层次分明,好看;显得我的网站的技术很高明,“高深莫测”;
    实现:
    可以使用 ISAPI 筛选器在 IIS Web 服务器级别实现 URL 重写,有很多的第三方的ISAPI 筛选器可以实现这种功能,另外,不知道在ASP上面是不是必须这样实现?今天下午我就研究了下使用ISAPI Rewrite 来实现这种功能。
    也可以使用 HTTP 模块或 HTTP 处理程序在 ASP.NET 级别实现 URL 重写。还不知道是怎么回事,看不少人写的.text实现的分析,呵呵,不大懂,待努力了。。。
    Apache服务器上也有一个非缺省的模块:mod_rewrite。

    步骤:
    1。到ISAPI Rewrite 下载isapi_rewrite Lite Version(免费版本)。
    2。安装下载的MSI程序
    3。将ISAPI_Rewrite.dll加入网站的ISAPI筛选器
    4。编辑ISAPI_Rewrite安装目录的httpd.ini,添加RewriteRule (转换规则)。例如:
             RewriteRule /news/([0-9]+).html /news/newsview.aspx\?id=$1  
             这样,当你访问/news/21.html 的时候,它就自动显示news/newsview.aspx?id=21的结果
    5。OK。
    高深的东西多者呢,不过简单的实现好像就这么多。也许有没有说明白,其实我也是参考别人的作的,看下面链接的文章。 另外,提醒自己,学好、精通正则表达式。

    update:2006-3-7
    使用上述的方式改造了公司的一个网站,但是发现有时候访问路径会出现莫名其妙的问题。再者,同台服务器上面的另外一个站点的个别栏目出现问题,也是路径出现错误。郁闷。在服务器上面删除
    ISAPI Rewrite 后问题解决。无奈,只好恢复URL重写之前的系统。公司服务器运行的是WIN2000的系统。奇怪啊?我只是在要改造的网站上面添加了ISAPI筛选器,另外一个网站应该不会受到影响啊?再则,如果对一台机器的几个网站配置了这种URLRewrite实现,他们很好的共享一个httpd.ini文件吗?你能难保他们不出错?看来这种实现URLRewrite的方式只适合运行一个网站的系统。一个上午基本上就这样白忙活了。

    参考资料:
    UrlRewrite
    http://yuhua.yfidc.com/post/100.shtml
    如何提高在Google中的排名(3)--Search Engine Friendly的URL设计
    http://www.chedong.com/tech/google_url.html
    ISAPI REWRITE文档
    http://www.isapirewrite.com/docs/

    下面两篇还没有研读清楚:
    在 ASP.NET 中执行 URL 重写
    http://www.microsoft.com/china/msdn/library/webservices/asp.net/URLRewriting.mspx
    .NET Framework 开发员指南--注册 HttpHandler
    http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpguide/html/cpconhttphandlerregistration.asp
  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/lbk/p/342326.html
Copyright © 2011-2022 走看看