kangle过滤器
kangle从3.3.0版本开始支持过滤器功能,过滤器以动态链接库(windows是DLL文件,unix是so文件)形式提供,可以用于修改和加强kangle所提供的功能。 过滤器加载在kangle主进程上,过滤每个请求直到他们找到一个他们需要处理。 检查和修改传入和传出的数据流的能力使得kangle过滤器功能非常强大和灵活。过滤器的可注册在站点级别或全局级别(即全局过滤器适用于kangle服务器上的所有站点),kangle主进程启动时被初始化。
kangle过滤器可以执行以下任务:
请求控制
过滤更改由客户端发送请求数据(如post数据)
控制物理文件被映射到的URL
回应控制
过滤更改发送给客户端的内容
当客户端连接关闭时进行处理
每一个kangle过滤器包含在一个单独的动态链接库中,必须导出两个入口点函数, kgl_filter_init和kgl_filter_process,可选择导出kgl_filter_finit函数。
目录
1 包含文件名
2 过滤器部署
3 过滤器调试
4 参考
包含文件名
ksapi.h
ksapi.h可从kangle的安装目录include目录下找到。
过滤器部署
在kangle的ext目录建立配置文件形式完成部署,配置文件语法:
<config>
<!-- 加载过滤器 -->
<http_filter name='test' filename='D:\project\kangle\Debug\testfilter.dll'/>
<vhs>
<!-- 使用过滤器,在vhs标签下面是全局使用,在某一个vh标签下面,表示只在此虚拟主机使用 -->
<filter name='test'/>
</vhs>
</config>
过滤器调试
如果加载不上,我们可以启动kangle的调试模式,或者是看server.log日志,里面有详细的错误信息。
调试模式启动kangle命令
kangle路径/bin/kangle -d5 -g {:3027:}{:3027:}{:3027:} 调试模式:
启动kangle命令
kangle路径/bin/kangle -d5 -g
学习了。
页:
[1]