nginx:HTTP过滤模块的调用流程

在content阶段时,会生成返回给用户的响应内容,对用户的响应内容,实际上还要做加工处理,HTTP过滤模块就是对响应内容做加工处理的。

就是在content阶段之后,log阶段之前去介入请求处理

 

 

 gzip_filter 必须要在 copy_filter模块之后。

gzip_filter需要对内存中的内容做压缩

copy_filter把文件中的内容拷贝一份到内存中,供gzip进行压缩

 

一.sub模块(替换响应中的字符串)

功能:将响应中指定的字符串,替换成新的字符串

ngx_http_sub_filter_module模块:默认未编译金nginx,通过--with-http_sub_module启用

1.sub_filter指令

 语法:sub_filter string replacement;

默认:空

放置位置:http,server,location

2.sub_filter_last_modified指令

语法:sub_filter_last_modified  on | off;

默认:sub_filter_last_modified off;

放置位置:http,server,location

3.sub_filter_once指令(只替换一次)

语法:sub_filter_once  on | off;

默认:sub_filter_once on;

放置位置:http,server,location

4.sub_filter_types指令(针对什么类型的文件进行替换)

语法:sub_filter_types mime-type ...;

默认:sub_filter_types text/html;

放置位置:http,server,location

 

二.addition模块

功能:在响应前或者响应后增加内容,而增加内容的方式是通过新增子请求的响应完成。

模块:ngx_http_addition_filter_module。默认未编译进nginx,通过--with-http_addition_module启用。

1.add_before_body指令(在body之前添加一些内容,让nginx访问uri,根据子请求的内容,增加到body之前)

语法:add_before_body uri;

默认:空

放置位置:http,server,location

2.add_after_body 指令

语法:add_after_body uri;

默认:空

放置位置:http,server,location

3.addition_types指令 (指定特殊类型才能使用此指令)

语法:addition_types mime-type ...;

默认:addition_types text/html;

放置位置:http,server,location

 

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值