时间:2020-10-28来源:www.pcxitongcheng.com作者:电脑系统城
凌乱的日志
日常使用的 Nginx 大都既做静态资源服务器,也做反向代理服务器,尤其有些时候考虑到跨域问题,会对静态资源和后端接口使用同一个监听端口,如果不做一下过滤处理,会在 access_log 中看到大量的例如 js、css、jpg 等静态资源的请求,比较影响查看后端接口调用的日志
本来没有很在意这个东西,不过在浏览一篇关于 Nginx 优化的文章时,发现了一种用 map 定义一个是否写日志的参数的方法,结合最近使用 map 做动态的跨域配置,索性也是学习及记录一下 map 的另一个使用场景
使用 map 过滤访问静态资源文件的日志
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
http { log_format main '$remote_addr [$time_local] $request $status ' 'uct="$upstream_connect_time" rt="$request_time"' ; map $uri $not_static { default 1; ~^(.*\.(gif|jpg|jpeg|png|bmp|swf|js|css|woff|ttf)$) 0; } server { listen 23456; server_name localhost; access_log logs /test .log main if =$not_static; } } |
解释说明:
另一种动静分离日志写法
?1 2 3 4 |
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css|woff|ttf)$ { #access_log off; #不输出访问静态资源的日志 access_log logs /static_resources .log; } |
到此这篇关于Nginx 过滤静态资源文件的访问日志的实现的文章就介绍到这了
2024-07-07
myeclipse怎么导入tomcat教程2024-07-07
myeclipse如何启动tomcat2024-07-07
myeclipse如何绑定tomcat上线了一个小的预约程序,配置通过Nginx进行访问入口,默认的日志是没有请求时间的,因此需要配置一下,将每一次的请求的访问响应时间记录出来,备查与优化使用....
2023-03-17