配置 Nginx日志相关信息

配置 Nginx

先来看一个实际的配置文件:

 

user nobody;# 工作进程的属主
 worker_processes 4;# 工作进程数,一般与 CPU 核数等同

 #error_log logs/error.log; 
 #error_log logs/error.log notice; 
 #error_log logs/error.log info; 

 #pid logs/nginx.pid; 

 events { 
 use epoll;#Linux 下性能最好的 event 模式
 worker_connections 2048;# 每个工作进程允许最大的同时连接数
}

 http { 
 include mime.types; 
 default_type application/octet-stream; 

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

 #access_log off; 
 access_log logs/access.log;# 日志文件名

 sendfile on; 
 #tcp_nopush on; 
 tcp_nodelay on; 

 keepalive_timeout 65; 

include
gzip.conf;

 # 集群中的所有后台服务器的配置信息
 upstream tomcats { 

 server 192.168.0.11:8080 weight=10; 

 server 192.168.0.11:8081 weight=10; 

 server 192.168.0.12:8080 weight=10; 

 server 192.168.0.12:8081 weight=10; 

 server 192.168.0.13:8080 weight=10; 

 server 192.168.0.13:8081 weight=10; 
}

 server { 
 listen 80;#HTTP 的端口
 server_name localhost; 

 charset utf-8; 

 #access_log logs/host.access.log main; 


 location ~ ^/NginxStatus/ { 

 stub_status on; #Nginx 状态监控配置

 access_log off; 

}


 location ~ ^/(WEB-INF)/ { 

 deny all; 

}




 location ~ .(htm|html|asp|php|gif|jpg|jpeg|png|bmp|ico|rar|css|js|

 zip|java|jar|txt|flv|swf|mid|doc|ppt|xls|pdf|txt|mp3|wma)$ { 
 root /opt/webapp; 

 expires 24h; 
}

 location / { 

 proxy_pass http://tomcats;# 反向代理

 include proxy.conf; 
}

 error_page 404 /html/404.html; 

 # redirect server error pages to the static page /50x.html 
#

 error_page 502 503 /html/502.html; 
 error_page 500 504 /50x.html; 
 location = /50x.html { 
 root html; 
}
}
}

 

 

nginx 日志相关指令主要有两条,

 log_format,用来设置日志格式, access_log,

用来指定日志文件的存放路径、格式和缓存大小 

1、log_format 格式     log_format       name( 格式名字)  格式样式(即想要得到什么样的日志内容)

 默认的示例:   log_format     main               '$remote_addr - $remote_user [$time_local]"$request"'                                               '$status $body_bytes_s ent"$http_referer"'                                               '"$http_user_agent""$http_x_forwarded_for"' 

注释: $remote_addr   与$http_x_forwarded_for 用以记录客户端的ip地址; 

$remote_user   :用来记录客户端用户名称; $time_local  : 用来记录访问时间与时区;  $request  :  用来记录请求的url与http协议;

$request_uri: /stat.php?id=1585378&web_id=1585378 $uri /stat.php $document_uri: /stat.php $status     :  用来记录请求状态;成功是200, $body_bytes_s ent  :记录发送给客户端文件主体内容大小; $http_referer  :用来记录从那个页面链接访问过来的;

 $http_user_agent  :记录客户毒啊浏览器的相关信息;

通常web服务器放在反向代理的后面,这样就不能获取到客户的IP地址了,通过$remote_add拿到的IP地址是反向代理服务器的iP地址。反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址;     log_format     mylogformat     ' $http_x_forwarded_for- $remote_user [$time_local] '                                                   '"$request"   '$status $body_bytes_s ent '                                                   '"$http_referer""$http_user_agent"'; 


2、用access_log指令日志文件存放路径; 用了log_format 指令设置了日志格式之后,需要用access_log指令指定日志文件的存放路径; access_log        path(存放路径)                   format (自定义日志名称) 示例: #access_log             logs/access.log              main; 我们用log_format 定义了一个mylogformat的日志 我们可以写成这样 access_log             logs/access.log         mylogformat ;

如果不想启用日志 : access_log off ;

在定义日志目录中要注意的是,

        1、nginx进程设置的用户和组必须有对该路径 创建文件的权限,假设nginx的usr指令设置的用户名 和用户组都是www,而logs 目录的用户名和组是root,那么日志文件将无法被创建;

 

        2、一般情况下,如果nginx.conf配置文件里的http里面没设置access_log off;默认是会把所有访问日志输出到/var/log/nginx目录下面,现在要把不同网站的日志区分开来,所以添加了access_log off。

        按照之前很多网上的配置方法是在各个虚拟主机配置文件的server段里添加日志格式和日志输出路径,如下

 

log_format access '$remote_addr - $remote_user [$time_local]"$request"'
'$status $body_bytes_sent"$http_referer"'
'"$http_user_agent"$http_x_forwarded_for';
access_log /home/wwwlogs/ddhow.com.log access;
error_log /home/wwwlogs/ddhow.com-error.log;

 


http://www.thinksaas.cn/topics/0/277/277535.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值