nginx 日志配置不生效的问题


log_format 有个默认的日志格式:

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

nginx 默认调用 combined 格式来记录日志,即默认调用:(默认记录在access.log文件中)

access_log  logs/access.log  combined;

 

nginx允许自定义日志格式,例如:

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

以上是自定义了日志格式:main(main名称可以自定义)

 

要想使其生效,就必须用access_log指定调用:

access_log  logs/xx.log  main;

否则,nginx仍然会去调用combined格式来记录日志。

 

注意,http段也必须明确指定调用main格式才会生效,否则还是会调用默认的combined格式。

(我就曾经犯傻,http段没有调用main格式,却一直搞不懂为啥默认日志文件access.log里边没有生效!)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM