nginx_substitutions_filter
请注意:此模块不是Nginx源的分布,可点击此链接找到安装说明,
http://wiki.nginx.org/NginxHttpSubsModule#Installation 。
概述
nginx_substitutions_filter 是一个过滤器模块,它可以在响应主体上运行正则表达式和固定字符串替换。该
模块不同于Nginx的本地替代模块。它能够扫描输出链缓冲区和匹配逐行字符串,类似于Apache的
mod_substitute。
比如
location / {
subs_filter_types text/html text/css text/xml;
subs_filter st(\d*).example.com $1.example.com ir;
subs_filter a.example.com s.example.com;
}
指令
•subs_filter_types
•subs_filter
subs_filter_types
语法: subs_filter_types mime-type [mime-types]
默认值: subs_filter_types text/html
作用域: http, server, location
subs_filter_types 用于指定subs_filter的内容类型检查。默认是text/html.。
该模块只适用于纯文本。如果是压缩的响应,它不能解压缩响应,且将忽略此响应。这个模块可以兼容gzip过滤
器模块。但是不能代理压缩的响应,您可以禁用这样的压缩响应,如下:
proxy_set_header Accept-Encoding "";
subs_filter
语法: subs_filter source_str destination_str [gior]
默认值: none
作用域: http, server, location
subs_filter 允许在目标字符串的nginx响应中替换源字符串(正则表达式或固定)。替代的文本可能包含变量
。支持每个位置一个以上的替换规则。第三个标志的含义是:
•g(default): 替换所有匹配字符串。
•i: 执行区分大小写的匹配。
•o: 只替换第一个。
•r: 处理模式是作为一个正规表达式,默认是固定的字符串。
安装说明
安装前,先获取SVN版本控制源:
svn checkout http://substitutions4nginx.googlecode.com/svn/trunk/ substitutions4nginx-read-only
然后编译nginx的下列选项:
./configure --add-module=/path/to/module
更新说明
nginx_substitutions_filter 0.5.2 2010-08-11 更新
•进行了多个模块的优化
•修复了缓冲区重叠的错误
•修复了输出链回归NGX_AGAIN的段故障错误
•修复了最后没有换行缓冲区的错误,这将会导至段故障。
nginx_substitutions_filter 0.5 2010-04-15 更新
•重构源结构,创建dev分支。
•修复了缓冲区块造成内容遗失的错误
•修复了last_buf的错误和兼容nginx 0.8.25版本以上的错误
•修复了固定字符串替换中不需要的配置错误
•添加正规表达式捕获功能
nginx_substitutions_filter 0.4 2009-12-23 更新
•修复了多个漏洞
nginx_substitutions_filter 0.3 2009-02-04 更新
•首次公开发布
相关阅读:
- Nginx系列教程:nginx_module_development模块开发 2012-05-27
- Nginx系列教程:NginxHttpOwnerMatch模块(解决链接型文件跨站访问) 2012-05-27
- Nginx系列教程:ngx_cache_purge模块 2012-05-27
- Nginx系列教程:Notice模块 2012-05-27
- Nginx系列教程:HTTP模块 2012-05-27
- Nginx系列教程:rewrite规则使用说明 2012-05-26
- Nginx系列教程:常用PHP程序Rewrite(伪静态规则) 2012-05-26
- Nginx系列教程:日志分析AWStats+JAWStats安装配置 2012-05-26
来源:oschina
链接:https://my.oschina.net/u/105637/blog/98809