在ngixn.cnf中当前项目server模块中加入以下配置代码:
if ($time_iso8601 ~ "(\d{4})-(\d{2})-(\d{2})") {
set $time $1$2$3;
}
access_log /usr/local/lnmp/nginx-1.10/logs/${server_name}/${time}.alog combined ;
说明:
if判断中进行正则匹配,匹配完成后根据小括号()将匹配成功的字符设置为$1,$2,$3等等,此次匹配的结果为年月日。
set $time $1$2$3这句户表示在配置文件中设置一个变量time,赋值为$1$2$3即年月日。
access_log /usr/local/lnmp/nginx-1.10/logs/{$server_name}/${time}.alog combined ;
本句的意思是开启log,并将日志写入/usr/local/lnmp/nginx-1.10/logs/{$server_name}/${time}.alog文件中,$server_name为当前server_name,$time为前文年月日,combined表示使用默认日志格式进行记录。