本文為您介紹AScript腳本中所有內(nèi)置變量的含義和對(duì)應(yīng)Nginx原生變量。
內(nèi)置變量表
AScript內(nèi)置變量如下表所示。
內(nèi)置變量名 | 含義 | 對(duì)應(yīng)Nginx原生變量 |
---|---|---|
$arg_{name} | Query String 中的參數(shù)name 值。Query String 表示HTTP請(qǐng)求中的請(qǐng)求參數(shù)。
|
ngx.var.arg_{name}
說明
{name} 中出現(xiàn)的連接號(hào)(-),需要使用下劃線(_)替代,例如:X-USER-ID 對(duì)應(yīng)為$arg_x_user_id 。
|
$http_{name} | 請(qǐng)求頭中的name 值。
|
ngx.var.http_{name}
說明
{name} 中出現(xiàn)的連接號(hào)(-),需要使用下劃線(_)替代,例如:X-USER-ID 對(duì)應(yīng)為$http_x_user_id 。
|
$cookie_{name} | 請(qǐng)求cookie頭中的name 值。
|
ngx.var.cookie_{name}
說明
{name} 中出現(xiàn)的連接號(hào)(-),需要使用下劃線(_)替代,例如:X-USER-ID 對(duì)應(yīng)為$cookie_x_user_id 。
|
$scheme | 協(xié)議類型。 | ngx.var.scheme |
$server_protocol | 協(xié)議版本。 | ngx.var.server_protocol |
$host | 原始host。 | ngx.var.host |
$uri | 原始URI。 | ngx.var.raw_uri |
$args | $args 表示當(dāng)前HTTP請(qǐng)求的全部請(qǐng)求參數(shù),但不包含問號(hào)(? )。例如:http://www.a.com/1k.file?k1=v1&k2=v2 。
|
ngx.var.args |
$request_method | 請(qǐng)求方法。 | ngx.var.request_method |
$request_uri | uri+'?'+args 的內(nèi)容。
|
ngx.var.request_uri |
$remote_addr | 客戶的IP地址。 | ngx.var.remote_addr |
說明
- 內(nèi)置變量名前的美元符號(hào)(
$
)僅為強(qiáng)調(diào)其內(nèi)置變量屬性,刪除后不影響使用。 - 內(nèi)置變量不允許擔(dān)當(dāng)左值,即內(nèi)置變量不允許被賦值。
- 每條AScript規(guī)則中最多支持使用200個(gè)全局變量,局部變量不限。如果全局變量超過200個(gè)請(qǐng)自定義函數(shù),并在函數(shù)中以局部變量的形式使用全局變量。