版本:nginx/1.7.4
根據訪問nginx配置文件
日誌路徑
/usr/local/nginx/logs/
其中把訪問日誌記錄位置
/usr/local/nginx/logs/access/域名/$year-$month-$day-$hour-access.log
錯誤日誌
/usr/local/nginx/logs/error/域名/error_域名.log error;
#生產場景一般是 warn | error | crit 這三個級別之一,錯誤日誌級別默認爲error
使用nginx配置自動實現訪問日誌按日期存放,杜絕一個大文件存放
$time_iso8601 生成格式: 2018-01-04T15:00:35+08:00
$time_local 生成格式: 04/Jan/2019:15:00:07 +0800
需要在對應的server 塊中加入
if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})")
{
set $year $1;
set $month $2;
set $day $3;
set $hour $4;
set $minutes $5;
set $seconds $6;
}
#訪問日誌 按小時
access_log logs/access/域名/$year-$month-$day-$hour-access.log;
#錯誤日誌
error_log logs/error/域名/error_域名.log error;
************************
注意:這裏需要確認訪問日誌對應路徑,即 /usr/local/nginx/logs/access/域名 的所屬組或者用戶是誰,
確認是否爲nginx的.否則會導致日誌生成失敗
所以不是,就需要給nginx的user test test;權限
eg:
#先在文件下創建對應的文件夾
mkdir access
mkdir access/域名
#再把權限給nginx的用戶,使之可以進行寫操作記錄日誌
chown test:test /usr/local/nginx/logs/acces
chown test:test /usr/local/nginx/logs/acces/域名
#查看
ll
drwxr-xr-x 4 test test 4096 1月 4 14:18 access
************************
使用nginx檢測和平滑啓動
檢測配置是否正確
/usr/local/nginx/sbin/nginx -t
正確則平滑重啓Nginx
/usr/local/nginx/sbin/nginx -s reload
對於那些暫不需要記錄日誌的域名網站,在對應的server 塊中加入
對訪問該server塊的操作
#不記錄訪問日誌
access_log off;
#不記錄錯誤日誌
error_log /dev/null;