Nginx教程-http_core_module变量
生活随笔
收集整理的這篇文章主要介紹了
Nginx教程-http_core_module变量
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
ngx_http_core_module模塊在處理請求時,會有大量的變量,這些變量可以通過訪問日志來記錄下來,也可以用于其它nginx模塊。在我們對請求做策略如改寫等等都會使用到一些變量,順便對ngx_http_core_module模塊提供的變量總結了下,如下所示:
| $arg_PARAMETER | HTTP 請求中某個參數的值,如/index.php?site=www.ttlsa.com,可以用$arg_site取得www.ttlsa.com這個值. |
| $args | HTTP 請求中的完整參數。例如,在請求/index.php?width=400&height=200 中,$args表示字符串width=400&height=200. |
| $binary_remote_addr | 二進制格式的客戶端地址。例如:\x0A\xE0B\x0E |
| $body_bytes_sent | 表示在向客戶端發送的http響應中,包體部分的字節數 |
| $content_length | 表示客戶端請求頭部中的Content-Length 字段 |
| $content_type | 表示客戶端請求頭部中的Content-Type 字段 |
| $cookie_COOKIE | 表示在客戶端請求頭部中的cookie 字段 |
| $document_root | 表示當前請求所使用的root 配置項的值 |
| $uri | 表示當前請求的URI,不帶任何參數 |
| $document_uri | 與$uri 含義相同 |
| $request_uri | 表示客戶端發來的原始請求URI,帶完整的參數。uri和document_uri未必是用戶的原始請求,在內部重定向后可能是重定向后的URI,而$request_uri 永遠不會改變,始終是客戶端的原始URI. |
| $host | 表示客戶端請求頭部中的Host字段。如果Host字段不存在,則以實際處理的server(虛擬主機)名稱代替。如果Host字段中帶有端口,如IP:PORT,那么host是去掉端口的,它的值為IP。host 是全小寫的。這些特性與http_HEADER中的http_host不同,http_host只取出Host頭部對應的值。 |
| $hostname | 表示 Nginx所在機器的名稱,與 gethostbyname調用返回的值相同 |
| $http_HEADER | 表示當前 HTTP請求中相應頭部的值。HEADER名稱全小寫。例如,示請求中 Host頭部對應的值 用 $http_host表 |
| $sent_http_HEADER | 表示返回客戶端的 HTTP響應中相應頭部的值。HEADER名稱全小寫。例如,用 $sent_ http_content_type表示響應中 Content-Type頭部對應的值 |
| $is_args | 表示請求中的 URI是否帶參數,如果帶參數,$is_args值為 ?,如果不帶參數,則是空字符串 |
| $limit_rate | 表示當前連接的限速是多少,0表示無限速 |
| $nginx_version | 表示當前 Nginx的版本號 |
| $query_string | 請求 URI中的參數,與 args相同,然而query_string是只讀的不會改變 |
| $remote_addr | 表示客戶端的地址 |
| $remote_port | 表示客戶端連接使用的端口 |
| $remote_user | 表示使用 Auth Basic Module時定義的用戶名 |
| $request_filename | 表示用戶請求中的 URI經過 root或 alias轉換后的文件路徑 |
| $request_body | 表示 HTTP請求中的包體,該參數只在 proxy_pass或 fastcgi_pass中有意義 |
| $request_body_file | 表示 HTTP請求中的包體存儲的臨時文件名 |
| $request_completion | 當請求已經全部完成時,其值為 “ok”。若沒有完成,就要返回客戶端,則其值為空字符串;或者在斷點續傳等情況下使用 HTTP range訪問的并不是文件的最后一塊,那么其值也是空字符串。 |
| $request_method | 表示 HTTP請求的方法名,如 GET、PUT、POST等 |
| $scheme | 表示 HTTP scheme,如在請求 https://nginx.com/中表示 https |
| $server_addr | 表示服務器地址 |
| $server_name | 表示服務器名稱 |
| $server_port | 表示服務器端口 |
| $server_protocol | 表示服務器向客戶端發送響應的協議,如 HTTP/1.1或 HTTP/1.0 |
總結
以上是生活随笔為你收集整理的Nginx教程-http_core_module变量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Nginx教程-location配置
- 下一篇: Nginx教程-日志配置