nginx日志配置
日志格式通過(guò) log_format命令來(lái)定義:
格式定義如下: '"remote_addr" "request" "request_time" '
日志格式允許包含的變量解釋如下:
$remote_addr, $http_x_forwarded_for (反向) 記錄客戶端IP地址
$remote_user ?記錄客戶端用戶名稱
$request ?記錄請(qǐng)求的URL和HTTP協(xié)議
$status ? 記錄請(qǐng)求狀態(tài)
$body_bytes_sent ?發(fā)送給客戶端的字節(jié)數(shù)产捞,不包括響應(yīng)頭大小
$byte_sent ?發(fā)送給客戶端的總字節(jié)數(shù)
$http_referer ?記錄從哪個(gè)頁(yè)面鏈接訪問(wèn)過(guò)來(lái)的
$http_user_agent 記錄客戶端瀏覽器相關(guān)信息
$request_length ?請(qǐng)求的長(zhǎng)度
$request_time ?請(qǐng)求的處理時(shí)間
$time_local ?通用日志格式下的本地時(shí)間
一般的nginx日志有兩個(gè):
在server端 : 配置access_log命令,用來(lái)指定日志文件的存放路徑栓始、格式和緩存大小
還有個(gè)error.log 离赫,日志級(jí)別有: debug info notice warn error crit 默認(rèn)為crit 遣疯,最好改為error或者warn級(jí)別
負(fù)載均衡
upstream是Nginx的HTTP Upstream模塊,這個(gè)模塊通過(guò)一個(gè)簡(jiǎn)單的調(diào)度算法來(lái)實(shí)現(xiàn)客戶端IP到后臺(tái)服務(wù)器的負(fù)載均衡。目前支持4種調(diào)度算法:
1. 輪詢(默認(rèn))
2. ip_hash 洲守。 每個(gè)請(qǐng)求按訪問(wèn)IP的hash結(jié)果分配
3. fair轩娶。 這是比上面兩個(gè)更加智能的負(fù)載均衡算法
4. url_hash儿奶。 此方法按訪問(wèn)url的hash結(jié)果來(lái)分配請(qǐng)求,使每個(gè)url定向到同一個(gè)后端服務(wù)器鳄抒。
upstream 支持的狀態(tài)參數(shù)
down闯捎, 表示當(dāng)前的server暫時(shí)不參與負(fù)載均衡
backup, 預(yù)留的備份機(jī)器
max_fails, 允許請(qǐng)求失敗的次數(shù)许溅,默認(rèn)為1.
fail_timeout 在經(jīng)歷了max_fails 次失敗后瓤鼻,暫停服務(wù)的時(shí)間。 max_fails 可以和 fail_timeout一起使用