1、日志路徑
Nginx日志包括error_log和access_log,在/etc/nginx/nginx.conf中有配置。
error_log:主要記錄nginx處理http請求的錯誤狀態,以及nginx本身服務運行的錯誤狀態。
access_log:記錄nginx每一次http請求的訪問狀態,主要用於分析每一次訪問的請求和客戶端的交互行為。
2、配置語法
Nginx的日志格式由log_format定義,語法如下:
Syntax:log_format name [escape=default|json] String...;
Default:log_format combined "...";
Context:http
3、Nginx變量
HTTP請求變量:arg_PARAMETER、http_HEADER(request的)、sent_http_HEADER(response的)
內置變量:Nginx內置的
自定義變量:自己定義
(1)演示一下添加HTTP請求變量:User-Agent
需要把 User-Agent 改為 user_agent 前添加$http_
檢查配置語法是否正確
nginx -t -c /etc/nginx/nginx.conf
重新加載配置
nginx -s reload -c /etc/nginx/nginx.conf
多次請求127.0.0.1,驗證成功
curl 127.0.0.1
tail -n 200 /var/log/nginx/access.log
(2)內置變量可以去官網查找:http://nginx.org/en/docs/,點擊:Logging to syslog
(3)默認內置變量解析
$remote_addr:客戶端地址
$remote_user:http客戶端請求nginx,認證的用戶名,默認沒有開啟這個認證模塊的話不會記錄該信息
$time_local:nginx的時間
$request:request請求行
$status:response返回狀態
$body_bytes_sent:從服務端響應給客戶端body信息的大小
$http_referer:上一級頁面的url地址
$http_user_agent:記錄客戶端用什么來訪問的
$http_x_forwarded_for:記錄每一級用戶從http請求里面攜帶的http信息