zoukankan      html  css  js  c++  java
  • nginx配置-location

    • 以 =开头表示精确匹配
      如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。
    • ^~ 开头表示uri以某个常规字符串开头,不是正则匹配
    • ~ 开头表示区分大小写的正则匹配;
    • ~* 开头表示不区分大小写的正则匹配
    • / 通用匹配, 如果没有其它匹配,任何请求都会匹配到

    顺序优先级:

    (location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > (/)

     测试:

    1.

            location = /api {
              #精确匹配
              return 402;
            }
        
            location /api {
                # 匹配任何以 /api 开头的地址,匹配符合以后,还要继续往下搜索
                # 只有后面的正则表达式没有匹配到时,这一条才会采用这一条
                return 403;
            }

    请求http://localhost:8090/api, 返回:402 Payment Required

    请求http://localhost:8090/api/a,返回:403 Forbidden

    (location =) > (location 完整路径)

    2.

            location ^~ /api/ {
                # 匹配任何以 /api/ 开头的地址,匹配符合以后,停止往下搜索正则,采用这一条。
                return 401;
            }
            
            location /api {
                return 403;
            }

    注意这里 location ^~ /api/ 和 location /api  不能相同,若 location /api 改成 location /api/,启动会报错,nginx: [emerg] duplicate location "/api/"

    请求http://localhost:8090/api, 返回:403 Forbidden

    请求http://localhost:8090/api/a,返回:401 Authorization Required

     (location 完整路径) > (location ^~ 路径)

    3.

            location ^~ /api/ {
                # 匹配任何以 /api/ 开头的地址,匹配符合以后,停止往下搜索正则,采用这一条。
                return 401;
            }
            
            location ~ .(gif|jpg|jpeg)$ {
    
                return 405 ;
            }

    请求http://localhost:8090/api/a.jpg, 返回:401 Authorization Required

    请求http://localhost:8090/aa/a.jpg,返回:405 Not Allowed

     (location ^~ 路径) > (location ~,~* 正则顺序) 

    欢迎扫码交流:

     
  • 相关阅读:
    转载ORACLE批量绑定FORALL与BULK COLLECT
    Oracle Locking Survival Guide
    转载:TOAD中查看执行计划
    Oracle 9i/10g编程艺术笔记第七章 并发与多版本
    C#调用Oracle存储过程返回多结果集
    转载oracle 字符集查看与修改
    转载:Oracle的优化器(Optimizer)
    Oracle 随笔
    转载:Oracle中SQL语句执行效率的查找与解决
    当查询和设置需要输入Pn时界面的处理方法
  • 原文地址:https://www.cnblogs.com/gexiaoshan/p/10219844.html
Copyright © 2011-2022 走看看