虚拟主机域名注册-常见问题服务器知识 → 操作系统

Nginx访问日志(access_log)配置及查看详解

  每当处理客户请求时,Nginx都会在访问日志中生成一个新事件。每个事件记录都包含一个时间戳,并包含有关客户端和所请求资源的各种信息。访问日志可以向您显示访问者的位置,访问者访问的页面,他们在页面上花费的时间等等。

  该log_format指令允许您定义记录消息的格式。该access_log指令启用并设置日志文件的位置和使用的格式。

  该access_log指令的最基本语法如下:

  access_log log_file log_format;

  其中log_file是日志文件的完整路径,是日志文件log_format使用的格式。

  访问日志可以在被启用http,server或location指令块。

  默认情况下,访问日志在httpNginx主配置文件中的指令中全局启用。

  /etc/nginx/nginx.conf

  http {

  ...

  access_log /var/log/nginx/access.log;

  ...

  }

  为了提高可读性,建议为每个服务器块设置一个单独的访问日志文件。在access_log该指令集server指令覆盖在所述一个组http(高层)指令。

  /etc/nginx/conf.d/domain.com.conf

  http {

  ...

  access_log /var/log/nginx/access.log;

  ...

  server {

  server_name domain.com

  access_log /var/log/nginx/domain.access.log;

  ...

  }

  }

  如果未指定日志格式,Nginx将使用如下所示的预定义组合格式:

  log_format combined '$remote_addr - $remote_user [$time_local] '

  '"$request" $status $body_bytes_sent '

  '"$http_referer" "$http_user_agent"';

  要更改日志记录格式,请覆盖默认设置或定义一个新设置。例如,定义一个名为custom的新日志记录格式,它将使用显示标题的值扩展组合格式,X-Forwarded-For在httpor server指令中添加以下定义:

  log_format custom '$remote_addr - $remote_user [$time_local] "$request" '

  '$status $body_bytes_sent "$http_referer" '

  '"$http_user_agent" "$http_x_forwarded_for"';

  要使用新格式,请在日志文件后指定其名称,如下所示:

  access_log /var/log/nginx/access.log custom;

  虽然访问日志提供了非常有用的信息,但它占用了磁盘空间,并可能影响服务器性能。如果服务器资源不足,并且网站繁忙,则可能要禁用访问日志。为此,请将access_log伪指令的值设置为off:

  access_log off;




免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:bkook@qq.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:linux服务端的cat命令具体用法
下一篇:Ubuntu 20.04 LTS服务器重置Sudo密码的方法
  >> 相关文章
没有相关文章。
0

在线
客服

在线客服服务时间:9:00-18:00

客服
热线

19899115815
7*24小时客服服务热线

关注
微信

关注官方微信
顶部