nginx错误日志/访问日志

1.规范优化Nginx配置文件

当有多个虚拟主机的时候,可以在主配置文件中使用include包含子配置文件

worker_processes 1;
events {
    worker_connections 1024;
}
http {
    include mime.types;
    default_type application/ocet-stream;
    sendfile on;
    keepalive_timeout 65;

    include extra/www.conf;
    include extra/blog.conf;
    include extra/bbs.conf;
}

2.虚拟主机设置别名

#server_name 多个域名空格分开
server {
    listen 80;
    server_name www.free.com free.com free.cn;
    location / {
        root html/free;
        index index.html;
    }
}

3.增加错误日志(error_log)配置

语法格式:
error_log(关键字) file(文件) level(错误日志级别)
默认值:
error_log logs/error.log error

错误日志级别:
[debug|info|notice|warn|error|crit|alert|emerg]
生产场景一般是[warn|error|crit]

可配置位置:
main,http,server,location


4.访问日志配置

用户访问网站的日志信息记录到指定的日志文件,ngx_http_log_module模块负责此功能.

4.1日志格式配置

配置语法 : log_format name string
配置位置 : http
完整格式 :

log_format main 
'$remote_addr - $remote_user [$time_local] "$request"' 
'$status $body_bytes_send "$http-referer"
'"$http_user_agent" "$http_x_forwarded_for"';
Nginx日志变量 说明
$remote_addr 访问网站的客户端地址
$http_x_forwarded_for 前端有代理服务器时,设置web节点服务器记录客户端地址
$remote_usr 远程客户端用户名称
$time_local 访问时间,访问时区
$request 用户的http请求起始行信息
$status 返回的http状态码
$body_bytes_sents 服务器响应客户端的Body字节数
$http_referer 记录此次请求是从哪个链接过来
$http_user_agent 记录客户端访问信息,如浏览器信息
4.2 记录日志配置

语法格式

默认格式
access_log path [format [buffer=size [flush=time]] [if=condition]
指定格式
access_log path format gzip=[=level] [buffer=size] [flush=time] [if=condition]
关闭格式
access_log off

示例:
access_log logs/www_access.log main
高并发场景下
access_log logs/access.log main gzip buffer=32k flush=5s (低频写日志)

你可能感兴趣的:(Nginx)