zoukankan      html  css  js  c++  java
  • nginx_server_location对客户资源的辨别规则

    语法:location [ = | ~ | ~* | ^~ ] uri { …一组命令… }

    http://nginx.org/en/docs/http/ngx_http_core_module.html#location

    location / {}:表示对/uri/目录及其子目录下的所有文件都匹配。所以”location / {}”的匹配范围是最大的。
    location = /uri/ {}:表示只对目录或文件进行匹配,不对目录中的文件和子目录进行匹配。所以一般只用来做文件匹配
    location ~ /uri/ {}:表示区分大小写的正则匹配。
    location ~* /uri/ {}:表示不区分大小写的正则匹配。
    location ^~ /uri/ {}:表示禁用正则匹配,即精确字符串匹配,此时正则中的元字符被解释成普通字符。

    配对规则

    nginx先检查URI的前缀路径,在这些路径中找到最精确匹配请求URI的路径。然后nginx按在配置文件中的出现顺序检查正则表达式路径,匹配上某个路径后即停止匹配并使用该路径的配置,否则使用最大前缀匹配的路径的配置。

    使用”=”前缀可以定义URI和路径的精确匹配。如果发现匹配,则终止路径查找。例如请求”/”很频繁,定义”location = /”可以提高这些请求的处理速度,因为查找过程在第一次比较以后即结束。

    配对优先级

    (location = uri )  >  (location ^~ uri)  >  (location *~|~ uri)  >  (location uri)
    等号           >        非正则          >               正则         > 没有任何符号

  • 相关阅读:
    「SOL」开关(LOJ)
    「SOL」星际迷航(LOJ)
    「NOTE」概率生成函数
    「SOL」谢特(LOJ)
    「SOL」重建计划(BZOJ)
    「SOL」Tug of War(洛谷)
    「SOL」同余方程(LOJ)
    「SOL」Bad Cryptography(Codeforces)
    「SOL」小A与两位神仙(洛谷)
    「SOL」Social Distance(AtCoder)
  • 原文地址:https://www.cnblogs.com/jeson-lbb/p/9432780.html
Copyright © 2011-2022 走看看