见官方文档:http://nginx.org/en/docs/http/ngx_http_sub_module.html
The ngx_http_sub_module
module is a filter that modifies a response by replacing one specified string by another.
This module is not built by default, it should be enabled with the --with-http_sub_module
configuration parameter.
Example Configuration
location / { sub_filter '<a href="http://127.0.0.1:8080/' '<a href="https://$host/'; sub_filter '<img src="http://127.0.0.1:8080/' '<img src="https://$host/'; sub_filter_once on; }
Directives
sub_filter |
— |
http , server , location
|
Sets a string to replace and a replacement string. The string to replace is matched ignoring the case. The string to replace (1.9.4) and replacement string can contain variables. Severalsub_filter
directives can be specified on one configuration level (1.9.4). These directives are inherited from the previous level if and only if there are no sub_filter
directives defined on the current level.
sub_filter_last_modified |
sub_filter_last_modified off; |
http , server , location
|
This directive appeared in version 1.5.1.
Allows preserving the “Last-Modified” header field from the original response during replacement to facilitate response caching.
By default, the header field is removed as contents of the response are modified during processing.
sub_filter_once |
sub_filter_once on; |
http , server , location
|
Indicates whether to look for each string to replace once or repeatedly.
sub_filter_types |
sub_filter_types text/html; |
http , server , location
|
Enables string replacement in responses with the specified MIME types in addition to “text/html
”. The special value “*
” matches any MIME type (0.8.29).
相关推荐
Windows版nginx去掉header中server后面的信息(nginx版本1.21.1) 使用方法: 1、关闭nginx服务 2、将新的nginx.exe替换原有的exe文件 3、重启nginx服务
这个模块允许你在Nginx内部对返回给客户端的响应内容进行实时替换,实现内容过滤。例如,如果你想将所有出现的 "jb51" 替换为 "我们",你可以这样配置: ```nginx location / { sub_filter 'jb51' '我们'; } ``` 请...
replace-filter-nginx-module模块允许用户在Nginx中直接通过配置指令来替换响应内容,这一功能对于不想修改后端服务代码但又需要在传输给客户端之前更改数据的场景特别有用。例如,可以用来替换返回的图片域名、修改...
`sub_filter`指令则是用来在响应中搜索和替换内容,这可以帮助快速修正网页上的陈旧数据。 在Nginx中获得当前时间需要使用SSI模块和相关变量,比如`$date_gmt`和`$date_local`,通过`Proxy_set_header`指令将时间...
1. **Handle模块**:负责处理客户端请求,并产生相应的响应内容。每个Handle模块都会被绑定到特定的location上。 2. **Filter模块**:用于过滤HTTP响应头和内容。在响应头和主体内容返回给客户端之前,可以通过...
第35章 Nginx对响应体内容的替换 第36章 Nginx的WebDAV 第37章 Nginx的Xslt模块 第38章 Nginx的基本认证方式 第39章 Nginx的cookie 第40章 Nginx基于客户端请求头的访问分类 第41章 通过Upstream模块使得Nginx...
- 修改`ngx_http_header_filter_module.c`文件中的`ngx_http_server_string[]`和`ngx_http_server_full_string[]`定义,将"Nginx"替换为想要伪装的字符串,比如"LUNAR"。 - 修改源代码后,需要重新编译Nginx。编译前...
- **location块**: 根据URL匹配规则,设置特定路径的响应处理方式。 ### 3. Nginx启动与管理 - **安装**: 通过包管理器(如apt-get或yum)在Linux系统上安装Nginx。 - **启动/停止/重启**: 使用`nginx`、`nginx -s...
- **第三方插件与模块**:扩展Nginx的功能,如`ngx_http_sub_module`用于替换文本中的子字符串。 #### 六、案例分析 - **场景一:动静分离** - 通过配置Nginx实现静态资源与动态内容分离,提升网站性能。 - 示例...
它支持多种模块化设计,可以扩展其功能,例如处理静态内容、缓存、负载均衡等。其中,`iconv`模块是Nginx的一个插件,主要负责处理字符编码的转换,使得Nginx能够处理不同编码格式的数据,如GBK、UTF-8等。 **Iconv...
- **缓存管理**:Nginx可以缓存静态资源,提高响应速度,通过`proxy_cache`和`add_header`等指令进行配置。 - **负载均衡**:如果有多台后端服务器,可以使用Nginx的反向代理功能实现负载均衡。 请根据你的具体...
- **rewrite**: URL重写规则,使用正则表达式进行匹配和替换。 - **try_files**: 按顺序查找文件,找到即返回,未找到则按顺序执行下一条指令。 ### 3. Nginx反向代理 通过`proxy_pass`指令,Nginx可以作为反向...
3. **负载均衡**:Nginx可以对多台后端服务器进行负载均衡,通过轮询、最少连接数、IP哈希等策略分发请求,提高系统的可用性和响应速度。 4. **HTTP缓存**:Nginx支持HTTP缓存功能,能够缓存经常访问的静态资源,...
本指南主要聚焦于NGINX代理Tomcat应用服务器的相关配置,包括但不限于设置NGINX为系统服务、修改NGINX配置文件以及优化负载均衡策略等核心内容。 **文档约定:** - 使用统一的文档模板,以便于后续管理和更新。 - ...
第35章 Nginx对响应体内容的替换 第36章 Nginx的WebDAV 第37章 Nginx的Xslt模块 第38章 Nginx的基本认证方式 第39章 Nginx的cookie 第40章 Nginx基于客户端请求头的访问分类 第41章 通过Upstream模块使得Nginx...
4. **配置文件**:安装过程中,会包含一个预先配置好的 Nginx 配置文件,它可能已经实现了动态替换响应内容的功能。这个功能通常通过使用 Nginx 的 `sub_filter` 模块来实现,可以在 `nginx.conf` 文件中找到相关...
第35章 Nginx对响应体内容的替换 第36章 Nginx的WebDAV 第37章 Nginx的Xslt模块 第38章 Nginx的基本认证方式 第39章 Nginx的cookie 第40章 Nginx基于客户端请求头的访问分类 第41章 通过Upstream模块使得Nginx...
11. **ngx_http_substitutions_filter_module**:在响应内容中进行字符串替换,可用于动态内容的处理。 12. **ngx_http_concat_module**:合并CSS或JavaScript文件,减少HTTP请求次数,提高页面加载速度。 13. **...
这本书籍主要探讨了如何通过Nginx替换Apache来提升Web服务的性能。Nginx与Apache的主要区别在于其事件处理模型。Apache采用多进程或多线程模型,每个连接都会分配一个独立的进程或线程,而在高并发下这可能导致资源...