ISAPI

简介:

Internet Server Application Programming Interface (ISAPI)是IIS的多层API。是可被微软IIS加载和调用的DLL。用于扩展HTTP服务器的功能。

ISAPI 也能够由Apache的mod_isapi模块实现,这样在微软的IIS运行的服务器端WEB应用程序也能在Apache上使用,其他第三方的服务器例如Zeus Web Server也提供ISAPI接口。

微软的WEB服务器是Internet Information Services,他是由许多子应用程序组成,非常的可配置化。ASP.NET就是IIS中的一个子应用程序。ISAPI是一个很低级的编程系统,所以提供了更好的性能。

ISAPI由2部分组成,ISAPI扩展和ISAPI过滤。只有两种类型的应用程序可以用ISAPI开发。过滤和扩展必须被编译成DLL,然后注册到IIS才能运行。

ISAPI应用程序可以由任何语言编写,有很多的库可以帮助简化ISAPI的开发,另外,有一种叫ATL Server的技术专门开发ISAPI程序。( ATL Server 是一个用来创建 ISAPI DLL 的 C++ 模板库。)

ISAPI扩展

ISAPI扩展是真实的运行在IIS上的应用程序,他们可以利用IIS提供的所有功能。ISAPI扩展以DLL的方式实现,他们被加载到由IIS控制的进程中,客户端可以用访问静态html的方法和访问ISAPI扩展的方法一致。某种文件扩展名或者文件夹或者站点都可以被映射,由ISAPI扩展去处理。

以下是常用的作为实现ISAPI扩展的ISAPI应用程序。

Active Server Page(ASP).标准安装

ASP.NET.IIS6.0前面版本,标准安装

ColdFusion,后期版本的ColdFusion可以装在IIS上

Perl

PHP

 

ISAPI过滤

ISAPI过滤用来修改或者提升IIS的功能。他们总是运行在IIS上,过滤每一个请求直到他们找到需要处理的请求。ISAPI过滤可以通过编程来检查和修改发送进来的数据和发送出去的数据。内部编程和外部配置决定了过滤调用的顺序。类似于Windows中的钩子,ISAPI过滤器将在发生某些特定事件的时候被调用(例如客户请求网页),可监视、拦截或修改客户端与服务器直接的传输数据。常用作数据库防下载、加密和压缩数据、统计访问人数等。

过滤以DLL的方式实现,可以以站点级别或者全局级别被注册到IIS服务器,比如,他们可以被应用到IIS服务器上的所有站点。过滤器,当工作进程开始运行,过滤器就会被初始化,并且开始监听所有的请求。

ISAPI过滤器实现的通常的任务

iis_isapi_filters

包括:

改变客户端发送来的请求数据(url和标头)。

控制物理文件和URL之间的映射。

控制你们用户的用户名和密码或者基本的认证。

修改或者分析认证完成后的请求。

修改要发送给客户的Response。

运行“access denied”响应。

当请求完成后运行处理。

当客户端关闭是运行处理。

执行专用日志和流量分析。

执行客户授权。

处理压缩和解压缩。

















本文转自cnn23711151CTO博客,原文链接:http://blog.51cto.com/cnn237111/591258 ,如需转载请自行联系原作者



相关文章
|
3月前
|
安全 Shell Windows
又见winforms.dll,LYLoadbr.exe,LYLeador.exe,mydata.exe,CnsM.dll等
又见winforms.dll,LYLoadbr.exe,LYLeador.exe,mydata.exe,CnsM.dll等
|
3月前
|
Web App开发 安全 Shell
遭遇sqmapi32.dll,kvmxfma.dll,rarjdpi.dll,google.dll,a0b1.dll等
遭遇sqmapi32.dll,kvmxfma.dll,rarjdpi.dll,google.dll,a0b1.dll等
|
3月前
|
安全 Windows
遭遇scvhost.exe,qsetup.exe,dsound.dll,hnetcfg.dll,olepro32.dll等2
遭遇scvhost.exe,qsetup.exe,dsound.dll,hnetcfg.dll,olepro32.dll等2
|
3月前
|
安全 Windows
遭遇scvhost.exe,qsetup.exe,dsound.dll,hnetcfg.dll,olepro32.dll等1
遭遇scvhost.exe,qsetup.exe,dsound.dll,hnetcfg.dll,olepro32.dll等1
|
Web App开发 Windows
Framework4.0 IIS7下urlrewriter设置问题
一、Web.config配置解决办法     直接在Web.config下 加入:    1.             2.                3.                                    说明:如果是IIS7 和 Framework 2.0时,不需要红色字体部分,把v4.0.30319改成对应的2.0的版本号。
1110 0
|
C++ Java
Windows10 VS2017 C++ ini解析(使用simpleini头文件)
版权声明:本文可能为博主原创文章,若标明出处可随便转载。 https://blog.csdn.net/Jailman/article/details/85266402 simpleini项目地址:https://github.com/brofield/simpleini 下载,新建项目,并将SimpleIni.h文件通过包含目录的方式加载进来。
1771 0
|
安全 Shell Windows