nginx怎么配置静态文件(Nginx 过滤静态资源文件的访问日志的实现)
类别:服务器 浏览量:636
时间:2022-01-24 00:12:18 nginx怎么配置静态文件
Nginx 过滤静态资源文件的访问日志的实现凌乱的日志
日常使用的 Nginx 大都既做静态资源服务器,也做反向代理服务器,尤其有些时候考虑到跨域问题,会对静态资源和后端接口使用同一个监听端口,如果不做一下过滤处理,会在 access_log 中看到大量的例如 js、css、jpg 等静态资源的请求,比较影响查看后端接口调用的日志
本来没有很在意这个东西,不过在浏览一篇关于 Nginx 优化的文章时,发现了一种用 map 定义一个是否写日志的参数的方法,结合最近使用 map 做动态的跨域配置,索性也是学习及记录一下 map 的另一个使用场景
使用 map 过滤访问静态资源文件的日志
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; } }
解释说明:
- 自定义一个 log_format,标识为 main
- 对请求中的 uri 做匹配,如果是以 gif、jpg、css、js 等作为结尾的资源,则 $not_static 为0,否则为1
- 对访问23456端口的请求,access_log 指定使用标识为 main 的自定义日志格式,且仅当 $not_static 为1时才记录日志,关于 if 参数,可参考 官方文档
- 有一点需要注意,access_log 中使用 if 参数时,必须显式指定一个 log_format,否则会报错: nginx: [emerg] unknown log format "if=$not_static"
另一种动静分离日志写法
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css|woff|ttf)$ { #access_log off; #不输出访问静态资源的日志 access_log logs/static_resources.log; }
到此这篇关于Nginx 过滤静态资源文件的访问日志的实现的文章就介绍到这了,更多相关Nginx 访问日志内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
您可能感兴趣
- 如何设置nginx使用ip访问(nginx基于域名,端口,不同IP的虚拟主机设置的实现)
- nginx的请求处理(nginx处理http请求实现过程解析)
- nginx宝塔配置修改(宝塔面板默认的404页面不生效怎么办Nginx?)
- 实战部署nginxdocker(基于Docker、Nginx和Jenkins实现前端自动化部署)
- nginx最佳配置(nginx和lvs各自的优劣以及适合的使用环境)
- docker安装nginx如何配置(docker部署nginx并且挂载文件夹和文件操作)
- linuxnginx常用状态命令(nginx常用命令放入shell脚本详解)
- nginx如何配置php项目(Nginx服务器究竟是怎么执行PHP项目)
- 做网站是使用nginx还是apache(web服务器软件Apache与Nginx的对比分析)
- nginx动态路径配置(Nginx本地目录映射实现代码实例)
- nginx负载均衡高怎么用(Nginx + consul + upsync 完成动态负载均衡的方法详解)
- nginx 配置解析(Nginx的rewrite模块详解)
- nginx反向代理怎样实现(Nginx反向代理配置的全过程记录)
- nginx设置https访问(基于Nginx实现HTTPS网站设置的步骤)
- nginx事件模型有几种(Python实现监控Nginx配置文件的不同并发送邮件报警功能示例)
- nginx报网络连接错误(Nginx 502 Bad Gateway错误原因及解决方案)
- 英语难学吗(法语比英语难学吗)
- 今天要吃什么(今天要吃什么菜好)
- 网红直播可以赚很多钱吗(网红直播可以赚很多钱吗)
- 今天是什么日子(今天是什么日子有什么特殊意义吗)
- 这里输入关键词(怎么输入关键词搜索)
- 34岁的舒畅,就这样走到了末路,不知会不会后悔15年前的草率决定(就这样走到了末路)
热门推荐
- tomcat服务页面打开超慢(Web服务器Tomcat高级优化)
- iis7安全设置(IIS7 IIS8 http自动跳转到HTTPS80端口跳转443端口)
- js绘制平滑路径(如何利用Javascript生成平滑曲线详解)
- sql中trim函数用法(SQL中Truncate的用法)
- 前端表单验证(AmazeUI的JS表单验证框架实战示例分享)
- sqlserver 插入数据的触发器(SQL server 表数据改变触发发送邮件的方法)
- elementui的el-popover修改样式不生效的解决(elementui的el-popover修改样式不生效的解决)
- 学python从零基础到开发游戏(python开发游戏的前期准备)
- 微信小程序css使用技巧(微信小程序 CSS filter滤镜的使用示例详解)
- linux系统用ftp传输文件(Linux与Windows XP之间使用FTP互传文件)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9