## 說明
匹配位置之所以寫在前面,是因為后續的很多規則的配置都需要理解這一節內容,在前面的簡介中列出了我們可以匹配的位置,但是不夠形象和具體,下面就具體的說明
**對應普通匹配規則中的key**

**對應高級規則,規則組配置中的第一個參數**

## 概要說明

基本上一個`request` 請求就包含這些信息,這里在對比前面的參數進行較為詳細的解釋
* scheme
請求協議如 `HTTP 1.0` `HTTP 1.1` `HTTP 2.0`...
* uri
可以理解為 `path` 路徑
* remoteIp
發起請求的`ip`地址,直連IP地址
* ip
用戶真實`ip`地址,當有CDN等特殊情況時,用戶IP放在`header`頭中(`X-real-IP` | `X-Forwarded-For`),通過 ngx的realip模塊或`openstar`自帶的純`lua`實現的 `realIpFrom_Mod`模塊獲取的用戶真實IP
* serverIp
當時負責反向代理的服務器IP
* http_host
請求頭中的 `HOST`
* hostname
真正解析的 `host` ,當一個沒有配置反向代理解析的域名到了服務器上,其請求的`HOST`可能是`www.nginx.org`,但是實際工作時,卻會解析到對應端口的 `default` 域名上,那么其真實的域名就是該`server`節點的`server_name`
* method
請求方法如 `GET` `POST` `HEAD`...
* referer # 請求的 referer
來源地址,上圖的來源地址是`http://nginx.org/`
* useragent # 請求的 useragent
請求的瀏覽器信息
* cookie # 請求的 cookie
請求時攜帶的用戶會話`cookie`信息
* query_string
`GET`請求參數的完整字符串,包括了請求的參數名和參數的值,也就是圖片中`?`后面的內容
* request_uri # 完整的 請求地址 (uri+query_string)
簡單的理解就是 `uri` + `query_string` 的拼接(圖片中藍色線加上黃色線的內容)
* http_content_type # 請求頭 類型字段
請求頭的類型如:`text/plain` `multipart/form-data ...` `application/x-www-form-urlencoded`
* headers
`table`類型,是請求頭的完整信息(包括 `cookie`,`referer`,`useragent`等自定義頭),一個 `KEY - VALUE` 表
* args
`table` 類型,是GET請求參數的完整信息,一個`KEY - VALUE` 表
* args_data
args表所有`VALUE`的連接
* posts
`table`類型,`POST`方法時,`http_content_type` 為 `x-www-form-urlencoded`,一個`KEY - VALUE`表
* posts_data # posts 該table中所有 value 的連接字符串,連接符 ,
posts表所有`VALUE`的連接(圖片中`post_data`為`openstar,3e45bf06417abbsdf06c5dd`)
* posts_all
`POST`方法時,完整的`body`內容(圖片中`posts_all`為`username=openstar&passwd=3e45bf06417abbsdf06c5dd`)
* post_form
`table`類型,`POST`方法時,且`http_content_type`為`multipart/form-data...`時的 `KEY - VALUE` 表
POST表單如下
```
<form action="/form/" method="post" enctype="multipart/form-data">
<table>
<tr>
<td><label for="txtname">賬號:</label></td>
<td><input type="text" id="txtname" name="login_username" /></td>
</tr>
<tr>
<td><label for="txtpswd">密碼:</label></td>
<td><input type="password" id="txtpswd" name="login_pswd" /></td>
</tr>
<tr>
<td colspan=2>
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<input type="submit" name="submit" value="Submit" />
</td>
</tr>
</table>
</form>
```
上傳數據如下:

對應的 `KEY - VALUE ` 表如下:
```
[
["login_username",null,null,"openstar"],
["login_pswd",null,null,"passpasshaha"],
["file","快遞.txt","text\/plain","file msg is this!!! h"],
["submit",null,null,"Submit"],
[位置1,位置2,位置3,位置4]
]
```
匯總

- kcon 兵器譜
- 演示 1
- 演示 2
- 演示 3
- 演示 4
- 演示 5
- 前言
- 安裝
- 更新
- 登錄后臺
- 授權認證
- 集群配置
- 7層防護 -- 最佳實踐
- 匹配位置說明
- 匹配方式說明
- 規則匹配詳解
- 全局 - CDN規則
- 添加header頭配置
- 限速limit配置
- 緩存proxy_cache配置
- 清除緩存
- 全局 - 獲取真實IP配置
- 全局 - IP黑白名單
- 全局 - 域名方法配置(白名單)
- 全局 - 跳轉規則配置
- 全局 - 高級規則配置
- 全局 - 普通規則配置
- 全局 - 頻率規則配置
- 全局 - 內容替換規則
- 內容替換規則(插件使用)
- 全局 - 攔截信息配置
- 全局 - LOG規則配置
- 平臺配置
- 基本配置
- 高級配置
- 配置文件管理
- 4 層代理
- 轉發配置
- 插件管理
- 防護配置
- 網站管理
- 證書管理
- 域名管理
- 網站規則
- 插件管理
- 插件操作 --- 基本使用
- 插件操作 --- 手機號脫敏插件
- 歸檔
- 更新日志
- 視頻教程目錄