nginx还能修改http响应体内容

文章目录


1、ngx_http_sub_module模块可以通过字符串替换的方式修改响应体内容。默认未安装,需要在configure阶段指定--with-http_sub_module参数。
2、sub_filter指令用于替换响应内容,语法格式为sub_filter string replacementstring表示被替换内容,replacement为替换后的内容。可配置在http, server, location块中。
3、sub_filter_once指令用于设置查找到的字符串仅替换一次还是全部替换。语法为sub_filter_once on | off,默认值on表示仅替换一次,off表示全部替换。
4、sub_filter_last_modified指令用于控制在使用sub_filter修改响应体内容后原始响应头中Last-Modified字段是否保留。默认值off表示不保留,on表示保留。语法为sub_filter_last_modified on | off
5、测试

  • Thank you改为Thanks
server {
 listen 80;
 server_name localhost;

 location / {
  root html;
  sub_filter 'Thank you' 'Thanks';
 }
}

在这里插入图片描述
在这里插入图片描述

  • nginx全部替换为NGINX
server {
 listen 80;
 server_name localhost;

 location / {
  root html;
  sub_filter 'nginx' 'NGINX';
  sub_filter_once off;
 }
}

在这里插入图片描述

  • 同时修改多项内容
server {
 listen 80;
 server_name localhost;

 location / {
  root html;
  sub_filter 'nginx''NGINX';
  sub_filter '<head>''<head><meta charset="UTF-8">'; 
  sub_filter 'server''服务器';
  sub_filter 'Welcome to''欢迎来到';
  sub_filter_once off;
 }
}

在这里插入图片描述

  • 修改代理返回的内容
server {
 listen 80;
 server_name localhost;

 location / {
  root html;
  sub_filter 'nginx''NGINX';
  sub_filter '<head>''<head><meta charset="UTF-8">'; 
  sub_filter 'server''服务器';
  sub_filter 'Welcome to''欢迎来到';
  sub_filter_once off;
 }

 location /api/ {
  proxy_pass http://192.168.1.16:8086/;
  sub_filter '-''/';
  sub_filter_once off;
 }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bjzhang75

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值