sub_filter模块为nginx官方自带的模块,功能为替换掉返回给客户端数据的指定内容。需要使用该功能时只需要在编译时添加对该模块的支持,便会编译到nginx的内核。但是sub_filter的缺点之一是只支持配置一个sub_filter替换。
sub_filter语法包括:
sub_filter_types:*; 需要替换的类型,如text/htnl text/plain application/ javascript等,以空格分隔
sub_filter_once: on/off; 是否只替换一次
sub_filter: xxx1 xxx2; 前面的参数为原始内容,后面的参数为替换后的内容
substitution s_filter为第三方的nginx插件模块,支持同时配置多个subs_filter替换
安装配置方法如下:
1:下载substitutions_filter的第三方模块包,并解压。
下载地址:https://pan.baidu.com/s/1JqYx12MhO6avh472qQdrdw 提取码:3333
2:进入nginx的安装目录/sbin目录,执行./nginx -V, 获取nginx的配置参数
3:进入nginx的源码解压目录,执行配置及添加第三方模块,./ configure [原配置参数] --add_module= substitutions_filter的解压目录
4:在nginx源码目录下,执行make指令,编译,并进入objs目录,复制新生成的nginx可执行文件
5:备份nginx安装目录/sbin目录下原始的nginx文件,并复制重新编译后的nginx文件到安装目录/sbin下
6:在nginx源码目录下,执行make upgrade指令
7:重启nginx服务
subs_filter用法与sub_filter类似,如下所示:
subs_filter_types:*; 需要替换的类型,如text/htnl text/plain application/ javascript等,以空格分隔
sub_filter_once: on/off; 是否只替换一次
subs_filter: xxx1 xxx2; 前面的参数为原始内容,后面的参数为替换后的内容
subs_filter: xxx3 xxx4; 前面的参数为原始内容,后面的参数为替换后的内容