nginx常用內置變量


以下僅列出一些常用變量,更多變量請到nginx官網查閱

http://nginx.org/en/docs/varindex.html

 

1. 從請求行中解析的變量

以訪問http://localhost:80/nginx/varindex?a=1&b=2得到的結果GET /nginx/varindex?a=1&b=2 HTTP/1.1 為例(可以在access.log日志中看到訪問結果)

$arg_name
請求行中的參數,$arg_a=1,$arg_b=2,若無參數則為空字符串

$is_args
請求行中是否包含參數,若包含,則$is_args=?,否則為空字符串

$args
請求行中的全部參數,$args=a=1&b=2,若無參數則為空字符串

$request
完整的原始的請求行,GET /nginx/varindex?a=1&b=2 HTTP/1.1

$request_method
請求方法,如GET、POST

$request_uri
完整的原始請求URI,訪問的URL除去域名(或IP)和port,如/nginx/varindex?a=1&b=2

$document_uri/$uri
請求規范化以后的URI,可能與$request_uri不同,值可能隨請求的處理過程而改變

$server_protocol
請求的協議版本,如HTTP/1.0

以上變量在配置文件中通常配合try_files指令和rewrite指令使用

 

2. 從請求頭中解析到的變量

$host
請求頭的值,以下順序獲得:請求行中的host、請求頭中的Host、配置文件中匹配到的server_name

$remote_addr    
客戶端ip地址

$remote_port    
客戶端端口

$remote_user
基本身份驗證隨附的用戶名

$http_cookie    
Cookie請求頭的值

$http_user_agent    
用戶代理

$cookie_name    
Cookie中名為name的值    

$http_referer    
Http-Referer請求頭的值

 

3. 其他變量

$cookie_name
名為name的cookie

$protocol
與客戶端通信的協議: TCP或UDP(1.11.4)

$hostname
運行nginx的服務器主機名

$server_name
接受請求的服務器主機名

$body_bytes_sent
發送給客戶端的字節數

$connection_requests
通過連接發出的當前請求數

$limit_rate
用於設置響應的速度限制

$time_local
通用日志格式的本地時間

$status
響應狀態返回碼

$request_time    
請求處理時間

$proxy_add_x_fowarded_for
在客戶端傳遞來的X-Forwarded-For請求頭后面追加$remote_addr(用逗號分隔)
如果客戶端沒有傳遞X-Forwarded-For請求頭,那么該變量等於$remote_addr

$msec
以毫秒為單位的當前時間

$scheme
請求模式,http或https

$nginx_version
Nginx版本

$pid
工作進程的PID

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM