1、打开sh
nginx可以通过获取httpg
在nginx中,set$para$1,$1表示路径中正则表达式匹配的第一个参数。
下面是一个用$1和$2进行实验的例子。比如:
位置~/abc/(。*)/(.*){
设置$para1$1
设置$para2$2
content_by_lua_block
()
()
}
}
此时如果访问路径是localhost:8080/abc/qw
的基本工作原理
nginx以其高性能负载平衡器、缓存和web服务器而闻名。nginx由内核和模块组成,其中,内核的设计非常小巧简洁,完成的工作也非常简单。当它接收到一个http请求时,只需要通过查找配置文件就可以将客户端请求映射到一个位置块(位置是nginx配置中用于url匹配的指令),在这个位置配置的每条指令都会启动一个不同的模块来完成相应的工作。
因此,该模块可视为nginx的真正工人。通常一个位置中的指令会涉及一个handler模块和多个filter模块(当然多个位置可以重用同一个模块)。handler模块负责处理请求并完成响应内容的生成,而filter模块处理响应内容。
nginx的模块直接编译成nginx,所以属于静态编译模式。启动nginx后,nginx的模块是自动加载的,不像apache先把模块编译成so文件,然后在配置文件中指定是否加载。在解析配置文件时,nginx的每个模块都可能处理一个请求,但同一处理请求只能由一个模块完成。