关注互联网应用及运维技术的个人博客

Nginx修改响应内容模块(sub_filter模块)

sub_filter模块是一个Nginx内置的过滤器模块,主要用来修改网站响应内容中的字符串。sub_filter模块指令可在nginx.conf的http, server, location三个位置配置使用。当我们使用代理的时候,静态资源可能不在代理服务器上,那么我们就需要在响应的时候修改这些地址。我们也可以在这个时候过滤和替换一些服务器返回的数据。下面大家讲解下Nginx替换响应内容模块(sub_filter模块)。

1、安装sub_filter模块。如果已经安装Nginx,新增sub_filter模块。

1
2
3
4
[[email protected] ~]#wget http://nginx.org/download/nginx-1.18.0.tar.gz
[[email protected] ~]#tar -zxvf nginx-1.18.0.tar.gz
[[email protected] ~]# cd nginx-1.18.0
[[email protected] ~]# ./configure –with-http_sub_module && make && make install

2、sub_filter 指令
sub_filter string replacement。将string替换成replacement,不区分大小写。
sub_filter_last_modified on | off。默认:off,防止缓存。是否在Response header中写入Last-Modified,控制缓存。
sub_filter_once on | off。默认: on,只执行一次。sub_filter指令是执行一次,还是重复执行。
sub_filter_types mime-type …。默认: text/html。指定类型的MINE TYPE,如果所有类型,则使用:*。

3、sub_filter指令具体例子:

1
2
3
4
5
6
#将所有文件中的/js/替换为a/js/
location /a {
sub_filter_once off;
sub_filter_types *;
sub_filter /js/ a/js/;
}

赞(0)
未经允许不得转载:飞天狒狒 » Nginx修改响应内容模块(sub_filter模块)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址