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模块的更多相关文章

  1. Nginx 配置指令location 匹配符优先级和安全问题【转】

    Nginx配置指令location匹配符优先级和安全问题 使用nginx 很久了,它的性能高,稳定性表现也很好,得到了很多人的认可.特别是它的配置,有点像写程序一样,每行命令结尾一个";&q ...

  2. Nginx配置基础-location

    location表达式类型 ~ 表示执行一个正则匹配,区分大小写~* 表示执行一个正则匹配,不区分大小写^~ 表示普通字符匹配.使用前缀匹配.如果匹配成功,则不再匹配其他location.= 进行普通 ...

  3. nginx配置中location匹配规则详解

    一.概述 nginx官方文档给出location语法如下: 1 location [=|~|~*|^~] uri { … } 其中,方括号中的四种标识符是可选项,用来改变请求字符串和uri的匹配方式. ...

  4. 转:Nginx配置指令location匹配符优先级和安全问题

    转:http://www.jb51.net/article/47761.htm 使用nginx 很久了,它的性能高,稳定性表现也很好,得到了很多人的认可.特别是它的配置,有点像写程序一样,每行命令结尾 ...

  5. 【转】【Centos】nginx配置:location配置方法及实例详解

    location匹配的是nginx的哪个变量? $request_uri location的匹配种类有哪些? 格式 location [ 空格 | = | ~ | ~* |^~ | !~ | !~* ...

  6. nginx配置:location配置方法及实例

    转载:https://blog.csdn.net/heiyueya/article/details/70149270 location匹配的是nginx的哪个变量? $request_uri loca ...

  7. Nginx配置指令location匹配符优先级和安全问题

    使用nginx 很久了,它的性能高,稳定性表现也很好,得到了很多人的认可.特别是它的配置,有点像写程序一样,每行命令结尾一个";"号,语句块用"{}"括起来. ...

  8. nginx配置:location配置方法及实例详解

    今天深入研究了下nginx的location的用法,已经一些需要注意的细节,现在做一个归纳总结,以备后面查询. location匹配的是nginx的哪个变量? $request_uri locatio ...

  9. 【转】nginx配置:location配置方法及实例详解

    location匹配的是nginx的哪个变量? $request_uri location的匹配种类有哪些? 格式 location [ 空格 | = | ~ | ~* | !~ | !~* ] /u ...

随机推荐

  1. iOS 如何优化项目

    原文 前言 在项目业务趋于稳定的时候,开发完迭代需求后,我们可能会无所适从,进入一段空白期,但是对于攻城狮来说闲暇不是件好事,所以我们可能总想学点什么,却又没有头绪.这个时候我们就可以考虑完善和优化我 ...

  2. MSSQL优化(TUNING & OPTMIZATION & 优化)之——计划重用(plan reusing)

    Oracle中,为了减少系统内的硬解析,从而节省系统资源,有绑定变量.计划共享(通过cursor_sharing参数)等一系列措施.那么,SQL Server作为三大商业关系库之一,是否也存在这样的机 ...

  3. vue 项目中命名方法

    命名 命名的方法通常有以下几类: 命名法说明 1).camel命名法,形如thisIsAnApple 2).pascal命名法,形如ThisIsAnApple 3).下划线命名法,形如this_is_ ...

  4. 【转】MVC form提交实体接收参数时空字符串值变成null

    问题:entity.BZ的值是null,Request.Form["BZ"]的值是空字符串 目标:让entity.BZ的值是空字符串. 解决方法:在实体的BZ属性上加上 [Disp ...

  5. MySQL数据库安装与配置鸡汤

    目录 一.概述 二.MySQL安装 三.安装成功验证 四.NavicatforMySQL下载及使用 一.概述 MySQL版本:5.7.17 下载地址:http://rj.baidu.com/soft/ ...

  6. MFC CDHtmlDialog 加载本地资源

    步骤:1.资源视图 项目右击选择资源添加,自定义添加新类型 如:JS(会增加JS文件夹)2. 选择1新建的文件夹右击 添加资源 导入 选择js文件引入3. 在资源文件Resource.h文件夹能找到资 ...

  7. JQuery进度条

    需要实现效果如下图. 页面代码<div class='progress_bar' data-color='#f66' data-per='"+list[i].percent+" ...

  8. Receiver Operating Characteristics (ROC)

    The Receiver Operating Characteristics (ROC) of a classifier shows its performance as a trade off be ...

  9. codeigniter在nginx下返回404 not found

    codeigniter框架需要path_info的支持,Apache默认支持path_info,但是nginx默认不支持,我们需要设置nginx,使得nginx支持path_info 网上试了好多方法 ...

  10. 函数后面跟throw

    1.函数后面跟throw(),表示该函数不会抛出异常 2.函数后面跟throw(...),表示该函数可能会抛出任何形式的异常 3.函数后面跟throw(int),表示该函数只抛出int类型的异常