zoukankan      html  css  js  c++  java
  • nginx学习笔记(二)

    nginx变量

    Nginx 变量值容器的生命期是与当前正在处理的请求绑定的,而与 location 无关。
    通过 set 指令隐式创建的 Nginx 变量。这些变量我们一般称为“用户自定义变量”,或者更简单一些,“用户变量”。由 Nginx 核心和各个 Nginx 模块提供的“预定义变量”,或者说“内建变量”(builtin variables)。
    内建变量 $uri,可以用来获取当前请求的 URI(经过解码,并且不含请求参数),而 $request_uri 则用来获取请求最原始的 URI (未经解码,并且包含请求参数)。请看下面这个例子:

    location /test {
            echo "uri = $uri";
            echo "request_uri = $request_uri";
        }
    $ curl 'http://localhost:8080/test'
        uri = /test
        request_uri = /test
    
        $ curl 'http://localhost:8080/test?a=3&b=4'
        uri = /test
        request_uri = /test?a=3&b=4
    
        $ curl 'http://localhost:8080/test/hello%20world?a=3&b=4'
        uri = /test/hello world
        request_uri = /test/hello%20world?a=3&b=4
    

    另一个特别常用的内建变量其实并不是单独一个变量,而是有无限多变种的一群变量,即名字以 arg_ 开头的所有变量,我们估且称之为 $arg_XXX 变量群,这个变量的值是当前请求名为 name 的 URI 参数的值,而且还是未解码的原始形式的值

    location /test {
            echo "name: $arg_name";
            echo "class: $arg_class";
        }
    $ curl 'http://localhost:8080/test'
        name: 
        class: 
    
        $ curl 'http://localhost:8080/test?name=Tom&class=3'
        name: Tom
        class: 3
    
        $ curl 'http://localhost:8080/test?name=hello%20world&class=9'
        name: hello%20world
        class: 9
    
  • 相关阅读:
    Event 事件(最简单实用)
    Codeforces Beta Round #93_A题
    欧几里得算法扩展(extended gcd)解不定方程_初入门
    HDU2955_Robberies_01背包变种
    HDU2602_Bone Collector_很水的01背包
    USACO_2_1_3_Sorting a ThreeValued Sequence_交换环
    Codeforces Beta Round #93_B题
    中国剩余定理的_非互素同余模板
    HDU1114_DP_完全背包
    HDU3809_Decrypt coordinate_迭代法
  • 原文地址:https://www.cnblogs.com/binxyz/p/7844661.html
Copyright © 2011-2022 走看看