1. 程式人生 > >nginx日誌記錄post的引數

nginx日誌記錄post的引數

nginx的日誌通過調整log_format格式可以記錄所有請求資訊

回答群裡盆友一個問題
nginx 日誌,可以記錄post的引數嗎?

答:可以實現,通過設定log_format指令的引數。

log_format指令是用來控制nginx如何記錄http請求。

預設的nginx記錄日誌格式是註釋掉的,如果要記錄額外的資訊,需要自定義log_format格式。
log_format的引數都是nginx內嵌變數,具體含義詳見nginx內建變數
預設日誌格式

#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';

記錄post請求引數的日誌格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                '"$http_referer" $status $body_bytes_sent $request_body '
                '"$http_user_agent" "$http_x_forwarded_for"';

其實就是增加$request_body欄位到log_format裡。
如果為了除錯程式可以開啟開該欄位,不然不推薦記錄,以免洩露資訊給惡意攻擊者。