Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > vc6用isapi的filter实现url重定向功能
【标  题】:vc6用isapi的filter实现url重定向功能
【关键字】:vc6,isapi,filter,url
【来  源】:http://blog.csdn.net/liuxiaoyi666/archive/2006/08/14/1062274.aspx

vc6用isapi的filter实现url重定向功能

Your Ad Here

用vc实现url重定向功能非常简单 ,当然用.net更简单一些,但是asp3并不能用.net方法,最近刚好工作中又需要这类技术

最近参考了第五版的visual c++技术内幕 第35章Microsoft internet信息服务器(IIS)编程,里面讲到了一些isapi技术,但是里面对于过滤器(filter)讲得很少,很难理解如何去用url的rewriter技术

不过在实践的时候发现了一个很好玩的单词onurlmap 当时猜测这个overload的函数是不是可以实现重定向呢?于是打开msdn手册,搜索了一下,发现还真的可以.现在就说一下,如果去写这种代码

首先在vc6中新建工程->选择isapi extension wizard->选在isapi filter,把下面的那个isapi的扩展的勾去了->然后除了默认选项的勾以外,要多加一个url mapping requests的勾也要选上

在OnUrlMap这个函数里输入
  if (strstr (pMapInfo->pszURL, "DoRedirect"))
   {
      CHAR szRedirect [256];
      // replace www.microsoft.com with desired server
      sprintf(szRedirect, "Location: http://%s\r\n\r\n", "www.microsoft.com");
      pCtxt->ServerSupportFunction ( SF_REQ_SEND_RESPONSE_HEADER,
            (LPVOID) "302 Redirect",
            (DWORD *) szRedirect,
            0 );
      // Print a message to the debug window
      ISAPITRACE1 ("Redirecting to: %s\n", szRedirect);
      // we are done with this request
      return SF_STATUS_REQ_FINISHED_KEEP_CONN;
   }
   // URL did not contain a DoRedirect string.
   return SF_STATUS_REQ_NEXT_NOTIFICATION;

生成dll,在iis里的默认网站的属性里在isapi过滤器中选择那个dll

然后在ie或者其他的网页浏览器里输入http://localhost/DoRedirect 然后你会看到什么?呵呵,没错就是微软的主页

IIS代码管理(1):遍历应用程序池和属性:【上一篇】
微软推出Best Practice Analyzer for ASP.Net组态扫瞄工具:【下一篇】
【相关文章】
  • 关于solaris ipfilter
  • [img]http://wpa.qq.com/pa?p=1:624613722:11[/img][url=tencent://message/?uin=624613722&Site=writeblog...
  • 关于opencms把sites目录中的文件根据URL显示到网页的解决方法
  • UrlRewritingNet控件的简单使用
  • 记录一下连接各种数据库的url,备忘。
  • 门外汉浅谈基于ASP.NET之WebApp中的URL编解码
  • Netfilter中FTP Helper源码分析
  • 一个很好的.urlview
  • 慎用url重写
  • Filter过滤器的使用(转)
  • 【随机文章】
  • 乒乓球拍写实技巧
  • PhotoImpact 6.0中文版入门教程-空心字的制作
  • 常用SQL命令
  • 深入探讨EJB中新的消息驱动组件(1)
  • 因为驱动导致mysql连接不到
  • 不用网卡如何连接两台电脑?
  • SUN称不想再咄咄逼人 新标志色彩呈黄红蓝
  • c#中Split等分割字符串的几种方法(转)
  • JavaScript收藏
  • 笔记
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.