分类

  • 软件天地

  • Apache的魔术(重写规则)彻底抛弃IIS‖
      不知道各位大侠有没有
    是现在放弃了IIS,就出现
    持ASP.NET显然是不现实的
    验性的东西,况且现在他还
    Apache的代理访问IIS,就
    注意到Apache的代理功能。由于
    了一个尖锐的问题:原来的ASP.
    ,至少目前还没有一个完整的解
    是一个linux下的东西。所以我
    好像是Apache支持了ASP.NET了
    原来我使用了IIS支持ASP.NET,但
    NET的程序如何处理?让Apache支
    决方案(MONO)现在还只是一个实
    想到了Apache的代理功能。通过

      在你的Apache的Httpd.

    conf中添加以下内容就可以了,

    其中端口88是你的IIS使用的端口

      ProxyPass /home/ http://127.0.0.1:88/    

      ProxyPassReverse /ho
    me/ http://127.0.0.1:88/
      RewriteRule ^/home$ /home/ [R]                  
      这样通过 http://localhost/home/
    支持Asp/Asp.net
    就可以访问到你的IIS了,是不是变相实现了Apache

      事实上你还可以通过这种方法作一个
    镜像:
    网站的假镜像,让浏览者以为你做了一个其它网站的


      ProxyPass /home/ htt
    p://www.sina.com.cn/
      ProxyPassReverse /home/ http://w
    ww.sina.com.cn/
      RewriteRule ^/home$ /home/ [R]                  
      这次再访问http://loc
    alhost/home/是不是已经是www.
    sina.com.cn的首页了?
      是不是很神奇?                                                                

      (2)重写:

      经常看到一些网站上的
    uter/2003-8/2003-8-13-11
    骗了你的头脑,这样的url
    (这一部分需要一些正则表
    URL都是这样的http://www.ibey
    91.html,你是不是认为这个页面
    指向的也可能是动态的页面,这
    达式的知识)
    ond.org/box/Comp
    真的是静态的?错了,你的眼睛欺
    就是Apache的另一个魔术:重写。

      在我的Httpd.conf有这
    样一句,就实现了动态URL重写
    成静态URL的功能。
      RewriteRule /box/([^/]*)?/([^/]*
    )/([^/]*).html /box/view.do?ID=/$1/$2/$3 [P]
      很简单,按照从左到右有3个"([^/]*
    就是作为了动态URL的参数传递过来,取
    url不变,还有其他的参数大家可以参考A
    引擎收集,因为搜索引擎默认对html的抓
    引擎检索。
    )?",意思是匹配任意长度的任意字符,在后边这三个
    得相应的页面返回给浏览者 [P]是保持原来的静态
    pache的用户手册。这样做的好处就是很容易被搜索
    取是比动态URL的优先级高的,所以就很容易被搜索


    上一页 下一页




    map