1.9-nginx不记录指定文件类型日志

nginx的日志记录和格式,在主配置文件中有配置

vim /usr/local/nginx/conf/nginx.conf

中这一行

log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'

 '$host "$request_uri" $status'

'"$http_referer" "$http_user_agent"';


combined_realip         是日志的名字,可以自定义。如:wyp

$remote_addr            远程IP

$http_x_forwarded_for   代理的IP

[$time_local]           时间

$host                   域名

$request_uri            访问地址

$status                 状态码


因为主配置文件中定义了日志格式,所以需要在虚拟主机配置中体现,

root /usr/local/discuz;插入以下代码:

access_log /tmp/access.log combined_realip;

访问日志的路径和名称 日志的格式


接下来用curl -x127.0.0.1:80 www.llzdwyp.com/123 -I来测试

发现/tmp下多了access.log的日志文件,显示/123没有找到的404代码

如果用curl -x127.0.0.1:80 www.llzdwyp.com -I来测试

会发现许多的访问日志,包含jpg、png等,等下我们来去掉这些无关的日志

指定访问日志的时候,还是用到location这条语句,这里需要注意的是:localtion是有先后顺序的,

果匹配了第一条,就不往后匹配,所以之前我们定义的用户认证要放在前面,指定文件类型日志放到后面,否则还可以登录管理中心。

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

access_log off;

}

其中日志里有许多/static/和/cache/目录无关的日志,也可以指定不记录。照上面写一行

在上面的代码下面插入:

location ~ (static|cache)

{

access_log off;

}

注意:切记location有匹配顺序,这个案例中admin.php,所以顺序无所谓。

你可能感兴趣的:(1.9-nginx不记录指定文件类型日志)