Nginx配置之location模块和proxy模块
1、location指令的用法介绍
Location主要用来匹配url,如:http://www.beyond.com/nice,在这里对于location来说www.beyond.com是域名,/nice才是url。
对于url的匹配,可以使用字符串或者正则表达式,但如果是正则表达式,必须指定前缀,location指令来匹配不同的url,匹配成功后应用不同的配置
语法:location [=|~|~*|^~|@]/url {…..}
[=]精确匹配,如果找到匹配等号的内容,立即停止搜索,并立即处理请求(优先级最高)
[~]区分大小写
[^~]只匹配字符串,不匹配正则表达式
[~*]不区分大小写
[@]指定一个命名的location,一般只应用于内部重定向请求,location @name {・・・}
示例:
| 12345678910111213141516171819202122232425262728293031323334 |
worker_processes 1; events { worker_connections 1024;} http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name www.liyunlong.com; #No.1 location / { return 502; } #No.3 location ~* \.jpg$ { return 403; } #No.4 location ^~ /a/ { return 402; } #No.5 location /a/1.jpg { return 401; } #No.6 location = /a/.jpg { return 400; }}} |
小结:
1、等号优先级最高,工作中尽量把等号匹配的放在前边
2、~* \.jpg$优先级第二
3、^~ /a/优先级第三
proxy模块的介绍
Nginx转发模块是ngx_http_proxy_module,默认安装,可以直接使用
Proxy_pass此指令用于转发location匹配到的url到serve池子中。
参数:
proxy_set_header 让proxy获取RS的head(虚拟主机名字)
client_body_buffer_size客户端请求缓存大小,可以理解为先保存本地在传给用户
proxy_connect_timeout 与RS链接超时的时间
proxy_send_timeout RS回传数据的时间,必须在这个时间段内传完,否则断开连接
proxy_read_timeout 等待RS响应的时间,标明连接已经成功,正在排队
proxy_buffer_size 缓存区大小,默认等于指令proxy_buffers设置的大小
proxy_buffers 缓冲区的数量和大小,从RS获取的响应信息会放置到缓冲区
proxy_busy_buffers_size系统很忙时可以使用的proxy_buffers大小,官方推荐的大小是proxy_buffers的两倍
proxy_temp_file_write_size 缓存临时文件的大小
proxy_set_headerhost $host当RS有多个虚拟主机的时候需要逐个指定
proxy_set_headerX-Forwarded-For $remote_addr 开启负载均衡器转发真实客户的IP地址给RS.
注意:
“proxy_set_header”当我们的RS有多个虚拟主机(相同的ip,相同的端口)的时候如www、bbs、blog,代理服务器怎么知道将请求发到哪呢,这个时候nginx代理就会查找proxy_set_header参数,将请求发送到相应域名的虚拟主机上。
http://www.lai18.com/content/24608730.html
Nginx配置之location模块和proxy模块的更多相关文章
- Nginx 配置指令location 匹配符优先级和安全问题【转】
Nginx配置指令location匹配符优先级和安全问题 使用nginx 很久了,它的性能高,稳定性表现也很好,得到了很多人的认可.特别是它的配置,有点像写程序一样,每行命令结尾一个";&q ...
- Nginx配置基础-location
location表达式类型 ~ 表示执行一个正则匹配,区分大小写~* 表示执行一个正则匹配,不区分大小写^~ 表示普通字符匹配.使用前缀匹配.如果匹配成功,则不再匹配其他location.= 进行普通 ...
- nginx配置中location匹配规则详解
一.概述 nginx官方文档给出location语法如下: 1 location [=|~|~*|^~] uri { … } 其中,方括号中的四种标识符是可选项,用来改变请求字符串和uri的匹配方式. ...
- 转:Nginx配置指令location匹配符优先级和安全问题
转:http://www.jb51.net/article/47761.htm 使用nginx 很久了,它的性能高,稳定性表现也很好,得到了很多人的认可.特别是它的配置,有点像写程序一样,每行命令结尾 ...
- 【转】【Centos】nginx配置:location配置方法及实例详解
location匹配的是nginx的哪个变量? $request_uri location的匹配种类有哪些? 格式 location [ 空格 | = | ~ | ~* |^~ | !~ | !~* ...
- nginx配置:location配置方法及实例
转载:https://blog.csdn.net/heiyueya/article/details/70149270 location匹配的是nginx的哪个变量? $request_uri loca ...
- Nginx配置指令location匹配符优先级和安全问题
使用nginx 很久了,它的性能高,稳定性表现也很好,得到了很多人的认可.特别是它的配置,有点像写程序一样,每行命令结尾一个";"号,语句块用"{}"括起来. ...
- nginx配置:location配置方法及实例详解
今天深入研究了下nginx的location的用法,已经一些需要注意的细节,现在做一个归纳总结,以备后面查询. location匹配的是nginx的哪个变量? $request_uri locatio ...
- 【转】nginx配置:location配置方法及实例详解
location匹配的是nginx的哪个变量? $request_uri location的匹配种类有哪些? 格式 location [ 空格 | = | ~ | ~* | !~ | !~* ] /u ...
随机推荐
- 【转】C# string数组转int数组
//字符串数组(源数组) string[] sNums = new[] {"1", "2"}; //整型数组(目标数组) int[] iNums; //转换方法 ...
- [LeetCode] 295. Find Median from Data Stream ☆☆☆☆☆(数据流中获取中位数)
295. Find Median from Data Stream&数据流中的中位数 295. Find Median from Data Stream https://leetcode.co ...
- Vue中 computed 和 methods的区别
涉及到计算部分的时候,计算属性是基于它们的依赖进行缓存的,如果说值不变,那么它就不会去重新执行,只有当值发生了改变,它才会去重新执行一次,其它时候它都是缓存的.而方法则会反复计算处理.二者之间的差距就 ...
- openssl实现双向认证教程(服务端代码+客户端代码+证书生成)
一.背景说明 1.1 面临问题 最近一份产品检测报告建议使用基于pki的认证方式,由于产品已实现https,商量之下认为其意思是使用双向认证以处理中间人形式攻击. <信息安全工程>中接触过 ...
- Binary Analysis Tool安装使用教程
Binary Analysis Tool(BAT)是一个用于检测二进制文件使用到的开源组件,协助及早发现程序发布后可能会面临的开源协议解执的开源免费检测工具. 一.安装BAT和bat-extratoo ...
- PyCharm+QTDesigner+PyUIC使用教程
我们在PyCharm安装配置Qt Designer+PyUIC教程中已配置好了PyCharm+QTDesigner+PyUIC环境 这里在此基上我们演示如何使用这些工具,编写一个图形界面程序: 程序主 ...
- GNU和GPL的区别/关系
GUN:GNU's Not UNIX的缩写,是一项运动.是1983年Richard Stallman针对UNIX走向毕源和和收费后发起的运动,旨在打造出一套完全开源免费的操作系统. 为了更好地实施GN ...
- JDK自带的keytool证书工具详解
一.生成证书 keytool -genkey -alias tomcat -keyalg RSA -keystore D:/tomcat.keystore -keypass 123456 -store ...
- kiss prefix paleo,per,pen,pan,para out 1
1● paleo 2● per 3● pen 4● pan 5● para 1★ paleo 古 2★ para ,辅助,在旁边 3★ pan 广泛的 4★ per 假,坏,自始自 ...
- linux命令--文件查询
ls [ -lahid ] [ /* ] ls -- 默认查询当前目录下的显性文件 -l -- 显示文件的详细信息 -a -- 显示所有文件(包括隐藏文件) -h -- 文件大小显示为 ...