上节梳理了http执行的11各阶段,下面我们开始学习http过滤模块的调用流程,有想了解执行流程和原理的同学翻我以前的笔记。
替换响应中的字符串:sub模块
功能:将响应中的指定字符串,替换成新的字符串。本模块可以在nginx的回应中查找和替换文本.在编译nginx时必需加上–with-http_sub_module option
location / {
sub_filter </head>
'</head><script language="javascript" src="$script"></script>';
sub_filter_once on;
}
用过滤模块在http响应的前后添加内容 :addition模块
功能:在响应前或者响应后增加内容,而增加内容的方式是通过新增子请求的响应完成。
需要安装扩展:本模块可以在nginx的回应中查找和替换文本.在编译nginx时必需加上./configure --with-http_addition_module
location / {
add_before_body /before_action;
add_after_body /after_action;
}
Http框架提供的变量
- http请求相关的变量
- TCP连接相关的变量
- Nginx处理请求过程中产生的变量
- 发送http响应时相关的变量
- Nginx系统变量
变量详解:http请求相关的变量
arg_参数名 URL中某个具体参数值
query_string 与args变量完全相同
args 全部url参数
is_args 如果请求url中有参数返回?否则返回空
content_length http请求中标识包体长度的content_length头部的值
content_type 标识请求包体类型content_type头部的值
变量详解:TCP连接相关的变量
uri 请求URI(不同于url,不包括?后的参数)
document_uri 与uri完全相同
request_uri 请求的url(包括完整的参数)
scheme 协议名 http或者https
request_method 请求方法 GET/POST
request_length 所有请求内容的大小
remote_user 由Http Basic Auth协议传入的用户名
变量详解: Nginx系统变量
功能:http_头部名称:返回一个具体请求头部的值
http_host
http_user_agent
http_referer
http_via
http_x_forwarded_for
http_cookie
转载:https://blog.csdn.net/xuezhiwu001/article/details/100499811
查看评论