假设我们有一个包含文本的 HTML 文件,其中有一些字符串需要替换。
在这个示例中,我们将使用 sub_filter 指令来替换字符串 foo
,并将其替换为 bar
。我们将在一个虚拟主机中使用以下 nginx 配置:
server {
listen 80;
server_name example.com;
root /var/www/html;
location / {
# 开启 sub_filter
sub_filter on;
# 替换 foo 为 bar
sub_filter 'foo' 'bar';
sub_filter_types text/html text/css;
# 发送从后端获得的 HTTP 响应
proxy_pass http://backend;
}
}
现在,当客户端请求虚拟主机中的资源时,Nginx 将捕获最终响应,并搜索文本/html 内容以查找匹配的字符串 foo
。找到字符串后,它将用 bar
替换该字符串,并将修改后的响应发送回客户端。
请注意,如果没有设置 sub_filter_types,Nginx 将不会尝试搜索任何内容。