nginx中多规则替换过滤模块nginx_substitutions_filter用法

安装方法:
 

 代码如下 复制代码
cd /tmp
yum install subversion
svn checkout http://substitutions4nginx.googlecode.com/svn/trunk/ substitutions4nginx-read-only

在编译nginx时加上:
 

 代码如下 复制代码
./configure --add-module=/tmp/substitutions4nginx-read-only

使用方法
有两条指令:subs_filter_types,subs_filter
subs_filter_types
语法: subs_filter_types mime-type [mime-types]
默认:subs_filter_types text/html
适用区域:http, server, location
subs_filter_types是用来指令需要替换的文件类型,默认是text/html类型。此模块无法处理经过压缩的内容,虽然能与gzip filter模块兼容,但无法处理反向代理返回的内容。
当需要处理反向代理的内容时,可以使用如下语句禁用压缩:
proxy_set_header Accept-Encoding "";
subs_filter
语法;subs_filter 源字段串 目标字段串 [gior]
默认:无
适用区域:http, server, location

    subs_filter指令允许在nginx响应输出内容时替换源字段串(正则或固定)为目标字符串。第三个标志含意如下:
    g(默认): 替换所有匹配的字段串。
    i: 执行区分大小写的匹配。
    o: 仅替换首个匹配字符串。
    r: 使用正则替换模式,默认是固定模式。

时间: 2024-10-22 21:01:00

nginx中多规则替换过滤模块nginx_substitutions_filter用法的相关文章

Nginx中 Rewrite规则的学习笔记

路由重写是Web服务器中的一个很重要的基本功能.通过路由重写,可以结构化URL,更具语义化(对SEO有益).另外,分享出去的URL可能会因程序路由变动而导致URL失效,而路由的重写可以很好的解决这类问题. 适当的使用Rewrite功能,可以更我们带来很多的好处.Nginx中Rewrite的功能是基于perl语言兼容的正则表达式,所以在编译安装nginx之前,需要安装PREC库.Nginx中Rewrite功能实现是基于ngx_http_rewrite_module,所以确保安装了此模块. Rewr

nginx中伪静态规则出现emerg提示

遭遇问题:directive "rewrite" is not terminated by ";" 原因分析 用vi编辑器编辑完nginx.conf文件后保存,在shell下执行命令/usr/local/web/nginx/sbin/nginx -t用以检查 nginx.conf配置文件是否正确(假设nginx被编译到/usr/local/web/nginx/) 规则  代码如下 复制代码 rewrite ^/([a-zA-Z]{1,50})/api/([a-zA-

全面了解Nginx中的HTTP协议相关模块配置_nginx

要理解 HTTP 模块配置解析的过程,首先需要对 nginx 的配置文件结构做一个了解 nginx 的配置文件是用树状结构组织的,每个 NGX_CORE_MODULE 作为根统领着其下的所有配置项 而如下图所示,HTTP 模块的配置被分成了 main.server.location 三层 整个 nginx 配置解析的过程其实就是这棵树的深度遍历过程 而遍历 HTTP 子树的函数就是下面要介绍的 ngx_http_block 配置文件解析 -- http 配置块当我们需要使用 http 模块的时候

Nginx中调用GeoIP2的拓展模块处理不同国家的访问

下面为Nginx安装配置 (1)需要先安装libmaxminddb依赖库.libmaxminddb是一个C库文件,用于读取MaxMind DB文件,包括MaxMind下的GeoIP2数据文件. $ cd /usr/local/src $ git clone --recursive https://github.com/maxmind/libmaxminddb $ cd libmaxminddb $ ./bootstrap $ ./configure $ make $ make install $

Python中内置的日志模块logging用法详解_python

logging模块简介 Python的logging模块提供了通用的日志系统,可以方便第三方模块或者是应用使用.这个模块提供不同的日志级别,并可以采用不同的方式记录日志,比如文件,HTTP GET/POST,SMTP,Socket等,甚至可以自己实现具体的日志记录方式. logging模块与log4j的机制是一样的,只是具体的实现细节不同.模块提供logger,handler,filter,formatter. logger:提供日志接口,供应用代码使用.logger最长用的操作有两类:配置和发

解析Nginx中的日志模块及日志基本的初始化和过滤配置_nginx

无论在任何项目中,日志都是一个非常重要的模块,无论是问题定位还是日常信息的管理,都离不开他 在nginx中,ngx_errlog_module模块专门用于处理nginx日志信息,是nginx的core模块之一 在 main 函数中,时间初始化结束后马上进行的就是日志模块的初始化 日志结构: 日志模块的初始化主要做的事情就是初始化全局变量 ngx_log,并创建 errlog 文件 ngx_log_s 结构ngx_log 变量是一个 ngx_log_s 结构体,定义在 core/ngx_log.h

详解Nginx服务器中HTTP Headers相关的模块配置使用_nginx

ngx_http_headers_module模块 一. 前言ngx_http_headers_module模块提供了两个重要的指令add_header和expires,来添加 "Expires" 和 "Cache-Control" 头字段,对响应头添加任何域字段.add_header可以用来标示请求访问到哪台服务器上,这个也可以通过nginx模块nginx-http-footer-filter研究使用来实现.expires指令用来对浏览器本地缓存的控制.二. ad

《深入理解Nginx》阅读与实践(四) 简单的HTTP过滤模块

一.Nginx的HTTP过滤模块特征 一个请求可以被任意个HTTP模块处理: 在普通HTTP模块处理请求完毕并调用ngx_http_send_header()发送HTTP头部或调用ngx_http_output_filter()发送HTTP包体时,才会由这两个方法一次调用所有的HTTP过滤模块来处理这个请求.HTTP过滤模块仅处理服务器发送到客户端的响应,而不处理客户端发往服务器的HTTP请求. 多个过滤模块的顺序的形成以及Nginx自带的过滤模块请参考原书. 二.编写一个HTTP过滤模块 以向

nginx中使用rewrite模块的参数及示例

本文中的内容收集整理自互联网,在nginx中使用rewrite模块的一些方法.参数及示例文件,供以后学习,特归纳出来供大家来参考. &http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 正则表达式匹配,其中: * ~ 为区分 大小写匹配 * ~* 为不区分大小写匹配 * !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 文件及目录匹配,其中: * -f和!-f用来判断是否存在文件 * -d和!-d用来判断是否存在