HTTP模块Location相关指令

  1. 基本语法

    语法:location [= | ~ | ~* | ^~] </uri/> {...}   缺省:N/A作用域:server
  2. 匹配规则

    1. 四种匹配方式
       = 精确匹配     
     ~ 大小写敏感正则匹配
       ~* 大小写不敏感正则匹配  
         ^~ 前缀匹配
    2. location匹配指令的执行顺序    
     首先:= 精确匹配;    
      其次:^~ 前缀匹配;    
         再次:~* 和 ~ 正则匹配,顺序依据出现顺序; 
      最后:如果出现正则匹配成功,则采用该正则匹配;
    如果无可匹配正则,   则采用前缀匹配结果。

如:

       location  = / { # 只匹配"/".}    


  location  / {

# 匹配任何请求,因为所有请求都是以"/"开始    

            # 但是更长字符匹配或者正则表达式匹配会优先匹配  

                }  

    location ^~ /p_w_picpaths/ {      

         # 匹配任何以 /p_w_picpaths/ 开始的请求,并停止匹配  

               其它location            }  


      location ~* \.(gif|jpg|jpeg)$ {  

      # 匹配以 gif, jpg, or jpeg结尾的请求.  

        # 但是所有 /p_w_picpaths/ 目录的请求将由上面localtion处理.          }