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
相关推荐
User_芊芊君子4 小时前
影音自由新玩法:Plex+cpolar 解锁异地访问,告别网盘限速烦恼
服务器·nginx·测评
wanhengidc4 小时前
云手机的运行环境如何
运维·服务器·游戏·智能手机·生活
炸膛坦客4 小时前
Linux - Ubuntu - PC端:(三)切换中英文,Fcitx5
linux·ubuntu
7yewh4 小时前
jetson_yolo_deployment 01_linux_dev_env
linux·嵌入式硬件·yolo·机器人·嵌入式
cyber_两只龙宝4 小时前
【Haproxy】Haproxy的算法详解及配置
linux·运维·服务器·云原生·负载均衡·haproxy·调度算法
阿常呓语5 小时前
Linux命令 jq详解
linux·运维·shell·jq
百结2146 小时前
Nginx安全防护与HTTPS部署实战笔记
nginx·安全·https
_下雨天.6 小时前
Nginx安全防护与HTTPS部署实战笔记
nginx·安全·https
君生我老6 小时前
Linux 权限
linux
hy____1236 小时前
Linux_网络基础3
linux·服务器·网络