sub_filtersubs_filter 区别

  • sub_filter( 0.7.24):替换响应体(Response Body)中的文本,只能设置一组替换。
  • subs_filter:替换响应体(Response Body)和响应头(Response Headers)中的文本,可以设置多组替换。

sub_filter 使用案例:

http {
    server {
        listen 80;
        server_name example.com;

        location / {
            sub_filter 'old-text' 'new-text';
            sub_filter_once off;
            proxy_pass http://backend;
        }
    }
}

subs_filter 使用案例:

http {
    server {
        listen 80;
        server_name example.com;

        location / {
            subs_filter 'old-text-1' 'new-text-1';
            subs_filter 'old-text-2' 'new-text-2';
            proxy_pass http://backend;
        }

        subs_filter_types text/*;
        subs_filter_types application/json;
    }
}

安装方式

方法 1:命令行安装

CentOS 常规安装的 Nginx 中并不包含 subs_filter,需要额外安装 nginx-mod-http-sub 添加对其功能的支持。

1. 安装模块

sudo dnf install nginx-mod-http-sub

2. 加载模块

load_module modules/ngx_http_subs_filter_module.so;

CentOS 系统下只有 Nginx Plus 才能这么操作,否则需要重新编译 Nginx。Debian 系统已经直接安装了此模块。

方法 2:源码编译

1. 下载模块

git clone git://github.com/yaoweibin/ngx_http_substitutions_filter_module.git

2. 编译

./configure --add-module=/path/to/module

版权声明

本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者后除和本文原始地址:https://blog.mazey.net/3525.html

(完)


后除除
47 声望3 粉丝

不知不问