nginx--自定义日志跳转长连接文件缓存状态页

自定义日志服务

[root@localhost ~]# cat /apps/nginx/conf/conf.d/pc.conf 
server {
  listen 80;
  server_name www.fxq.com;
  error_log /data/nginx/logs/fxq-error.log info;
  access_log /data/nginx/logs/fxq-access.log main;
  location / {
     root /data/nginx/html/pc;
     index index.html;
  }
}

 要打开main

 生成日志

 页面不存在跳转服务

直接跳转到首页

[root@localhost ~]# cat /apps/nginx/conf/conf.d/pc.conf
server {
  listen 80;
  server_name www.fxq.com;
  location / {
     root /data/nginx/html/pc;
     index index.html;
     try_files $uri /index.html;
  }
}

 

 匹配uri目录下面的index.html文件

[root@localhost ~]# cat /apps/nginx/conf/conf.d/pc.conf
server {
  listen 80;
  server_name www.fxq.com;
  location / {
     root /data/nginx/html/pc;
     index index.html;
     try_files $uri $uri/index.html /index.html;
  }
}

 

补全文件名

[root@localhost ~]# cat /apps/nginx/conf/conf.d/pc.conf
server {
  listen 80;
  server_name www.fxq.com;
  location / {
     root /data/nginx/html/pc;
     index index.html;
     try_files $uri $uri.html /index.html;
  }
}

 返回状态码

[root@localhost ~]# cat /apps/nginx/conf/conf.d/pc.conf
server {
  listen 80;
  server_name www.fxq.com;
  location / {
     root /data/nginx/html/pc;
     index index.html;
     try_files $uri  =123;
  }
}

长连接配置

keepalive_timeout number; 设定保持连接超时时⻓长,0表示禁止长连接,默认为75s,通常配置在http字段作为站点全局配置
keepalive_requests number; #在一次长连接上所允许请求的资源的最大数量,默认为100次

keepalive_requests 3;
keepalive_timeout 65 65;

 开启长连接后,返回客户端的会话保持时间为65s,单次长连接累计请求达到指定次数请求或65秒就会被断开,后面的65s为发送给客户端应答报文头部中显示的超时间设置为65s:如不设置客户端将不显示超时时间

 使用telnet测试

telnet www.fxq.com 80

 2次后断开

 文件缓存

可配置在http,server,location

open_file_cache off; 是否缓存打开过的文件信息

open_file_cache max=N [inactive=time];

max=N:可缓存的缓存项上限数量;达到上限后会使用LRU(Least recently used,最近最少使⽤)算法实现管理理
inactive=time:缓存项的非活动时⻓长,在此处指定的时长内未被命中的或命中的次数少于
open_file_cache_min_uses指令所指定的次数的缓存项即为⾮非活动项,将被删除

nginx可以缓存以下三种信息:
(1) 文件元数据:⽂文件的描述符、文件大小和最近⼀一次的修改时间
(2) 打开目录结构
(3) 没有找到的或者没有权限访问的文件的相关信息

open_file_cache_errors on | off;是否缓存查找时发生错误的文件一类的信息 默认值为off

open_file_cache_min_uses number;
open_file_cache指令的inactive参数指定的时长内,至少被命中此处指定的次数方可被归类为活动项默认值为1

open_file_cache_valid time;缓存项有效性的检查验证频率,默认值为60s

[root@localhost ~]# cat /apps/nginx/conf/conf.d/pc.conf
server {
  listen 80;
  server_name www.fxq.com;
  open_file_cache max=10000 inactive=60s; #最⼤大缓存10000个⽂文件,⾮非活动数据超时时⻓长60s
  open_file_cache_valid 60s; #每间隔60s检查⼀一下缓存数据有效性
  open_file_cache_min_uses 5; #60秒内⾄至少被命中访问5次才被标记为活动数据
  open_file_cache_errors on; #缓存错误信息
  server_tokens off; #隐藏Nginx server版本。
  location / {
     root /data/nginx/html/pc;
     index index.html;
     allow 12.168.33.179;
  }
}

状态页

基于nginx模块ngx_http_stub_status_module实现,在编译安装nginx的时候需要添加编译参数--with-http_stub_status_module,否则配置完成之后监测会是提示语法错误。

location /nginx_status {
           stub_status;
           allow 192.168.13.118;
           allow 127.0.0.1;
           deny all;
        } 

 

Active connections: 当前处于活动状态的客户端连接数,包括连接等待空闲连接数。
accepts:统计总值,Nginx自启动后已经接受的客户端请求的总数。
handled:统计总值,Nginx自启动后已经处理完成的客户端请求的总数,通常等于accepts,除非有因worker_connections限制等被拒绝的连接。
requests:统计总值,Nginx自启动后客户端发来的总的请求数。
Reading:当前状态,正在读取客户端请求报文首部的连接的连接数。
Writing:当前状态,正在向客户端发送响应报文过程中的连接数。
Waiting:当前状态,正在等待客户端发出请求的空闲连接数,开启 keep-alive的情况下,这个值等于active – (reading+writing),

状态⻚页⽤用于输出nginx的基本状态信息:
输出信息示例例:
Active connections: 291
server accepts handled requests
16630948 16630948 31070465
上⾯面三个数字分别对应accepts,handled,requests三个值
Reading: 6 Writing: 179 Waiting: 106

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/588708.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C/C++ BM33 二叉树的镜像

文章目录 前言题目解决方案一1.1 思路阐述1.2 源码 总结 前言 镜像说的好听,无非就是换下节点。 题目 操作给定的二叉树,将其变换为源二叉树的镜像。 数据范围:二叉树的节点数 0 ≤ n ≤ 1000 0≤n≤1000 0≤n≤1000, 二叉树每…

ThreeJS:本地部署官网文档与案例

部署方式 部署之前请确保已经配置好node.js环境。 1. 下载ThreeJS源码 ThreeJS的GitHub地址:GitHub - mrdoob/three.js: JavaScript 3D Library.,可以简单查看ThreeJS当前版本:r164, 我们可以选择对应的版本(此处为r1…

打印机-STM32版本 硬件部分

最终PCB EDA工程: 一、确定芯片型号 根据项目需求,梳理需要用到的功能, 电量检测:ADC 按键:IO input外部中断 LED:IO output 温度检测:ADC 电机控制:IO output 打印通讯:SPI …

淘宝/天猫商品评论API接口:用户反馈实时追踪与商家决策优化

一、引言 在电子商务迅猛发展的今天,淘宝/天猫作为中国最大的电子商务平台之一,为众多商家提供了广阔的舞台。然而,面对日益激烈的市场竞争,如何精准把握用户需求、优化产品策略、提升服务质量,成为摆在众多商家面前的…

Linux环境与历史和Xshell安装与使用

各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 Linux是一个操作系统.全称叫Linux is not UNIX。由…

【C++】哈希的应用---位图

目录 1、引入 2、位图的概念 3、位图的实现 ①框架的搭建 ②设置存在 ③设置不存在 ④检查存在 ​4、位图计算出现的次数 5、完整代码 1、引入 我们可以看一道面试题 给40亿个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数…

通过iMock学习Jvmsandbox

Jvm-sandbox Jvm-sandbox基于Jvm-sandbox的Mock平台iMockiMock的工程学习iMock怎么写的(sandbox的module应该怎么写) Jvm-sandbox Jvm-sandbox是阿里开源的一款java的沙箱,看网上的介绍在沙箱里你可以做你能想到的奇妙的事情。 基于Jvm-san…

智慧旅游开启智慧生活,科技让旅行更轻松:通过智慧旅游,旅行者可以享受到更加便捷、高效的旅行服务,让旅行成为生活的一部分

一、引言 随着科技的飞速发展,我们生活的方方面面都在经历着前所未有的变革。旅游业作为服务业的重要组成部分,也在这场变革中迎来了前所未有的发展机遇。智慧旅游,作为科技与旅游深度融合的产物,正以其独特的魅力,引…

瑞_23种设计模式_解释器模式

文章目录 1 解释器模式(Interpreter Pattern)1.1 介绍1.2 概述1.2.1 文法(语法)规则1.2.2 抽象语法树 1.3 解释器模式的结构1.4 解释器模式的优缺点1.5 解释器模式的使用场景 2 案例一2.1 需求2.2 代码实现 3 案例二3.1 需求3.2 代…

信息时代的智慧导航:高效搜索、信息筛选与信任构建的全面指南!

文章目录 一、高效搜索:快速定位目标信息的秘诀二、信息筛选:去伪存真,找到有价值的信息三、信任构建:深入了解与直接沟通《搜索之道:信息素养与终身学习的新引擎》亮点内容简介目录获取方式 随着科技的飞速发展&#…

小白总结uniapp微信小程序跨域问题的解决(前端)

前言:本人前端小白一枚,在B站听了一个很不错的视频,关于uniapp Vue3超详细教程,有需要的小伙伴可以去听,受益匪浅,下面是该博主的链接: gitee源码地址:https://gitee.com/qingnian8/…

windows 驱动开发-DMA技术(三)

在早期,是按照基于包或者基于流的方式来描述DMA的,不过这个描述可能不准确,故在Vista之后修改为使用数据包/使用公共缓冲区的系统DMA。 简单的解释一下基于包和基于流的说法的原因,数据包是指一个个基于一定大小的数据块&#xf…

Tensorflow2.0笔记 - ResNet实践

本笔记记录使用ResNet18网络结构,进行CIFAR100数据集的训练和验证。由于参数较多,训练时间会比较长,因此只跑了10个epoch,准确率还没有提升上去。 import os import time import tensorflow as tf from tensorflow import keras …

数据库和缓存一致性问题

hello,各位小伙伴们大家好,我是颜书凌,下面给大家讲解一下数据库和缓存的一致性问题,话不多说 1、一致性介绍 一致性就是数据保持一致,在分布式系统中,可以理解为多个节点中数据的值是一致的。 强一致性…

2024年【G3锅炉水处理】试题及解析及G3锅炉水处理模拟考试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年G3锅炉水处理试题及解析为正在备考G3锅炉水处理操作证的学员准备的理论考试专题,每个月更新的G3锅炉水处理模拟考试题祝您顺利通过G3锅炉水处理考试。 1、【多选题】在可逆反应中,下面哪…

Node.js -- express 框架

文章目录 1. express 使用2. 路由2.1 路由的使用2.2 获取请求报文参数2.3 获取路由参数2.4 路由参数练习 3. express 响应设置4. 中间件4.1 全局中间件4.2 路由中间件4.3 静态资源中间件 5. 获取请求体数据 body-parser6. 防盗链7. 路由模块化8. 模板引擎8.1 了解EJS8.2 列表渲…

面试二十四、继承多态

一、继承的本质和原理 组合(Composition): 组合是一种"有一个"的关系,表示一个类包含另一个类的对象作为其成员。这意味着一个类的对象包含另一个类的对象作为其一部分。组合关系通常表示强关联,被包含的对象…

【Week-Y7】使用自己的数据集训练YOLO-v8

文章目录 一、官方环境配置与测试1. 配置环境2. 用官方图片测试(图片下载失败)3. 用本地图片测试,检查配置的环境是否可用 二、使用自己的数据集进行训练测试1. 执行split_train_val.py文件2. 执行python .\voc_label.py文件3. 创建fruit.yam…

[Python基础知识]05函数和模块

一、函数的定义 格式:def 函数名(参数列表): 注: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。即使该函数不需要接收任何参数,也必须保留一对空的圆括号 函数形参不需要声明其类型&#x…

layui中禁用div标签等操作

为了实现点击表格行后触发事件 然后去触发后进行操作 页面流程操作设置规定 不可编辑直接添加属性 class"layui-disabled"如果在最大的 div 设置不可编辑 但是内部有些还是可以触发使用的 所以就重写一下 取到当前 div 下的 所有的子元素 然后在给所有的子元素…
最新文章