开发者学堂课程【Linux Web 服务器 Nginx 搭建与配置:nginx 企业应用配置-3】学习笔记,与课程紧密联系,让用户快速学习知识.
课程地址:https://developer.aliyun.com/learning/course/579/detail/7991
快速学习 nginx 企业应用配置-3
目录:
一、ngx_hrrp_core_module
二、ngx_hrrp_stub_status_module
三、ngx_http_log_modul
四、ngx_http_gzip_module
二、ngx_hrrp_stub_status_module
1.ngx_hrrp_stub_status_module模块
用于输出nginx的基本状态信息
输出信息示例:
Active connections: 291
server accepts handled requests
1663094816630948 31070465
上面三个数字分别对应accepts,handled,requests三个值Readinq: 6 Writinq: 1 79 Waitinq: 106
Active connections:当前状态,活动状态的连接数
accepts:统计总值,已经接受的客户端请求的总数
handled:统计总值,已经处理完成的客户端请求的总数
requests:统计总值,客户端发来的总的请求数
Reading:当前状态,正在读取客户端请求报文首部的连接的连接数Writing:当前状态,正在向客户端发送响应报文过程中的连接数Waiting:当前状态,正在等待客户端发出请求的空闲连接数
1、 stub__status;
示例:
location /status {
stub_status;
//状态页会暴露服务器信息,因此为启用安全考虑,应进行访问权限的设置
allow 172.16.0.0/16;
deny all;
三、ngx_http_log_modul
1.ngx_http_log_module模块
指定日志格式记录请求
1)log_format name string ... //定义日志格式
示例
log_format combined
'
$remote_addr-$remote_user[$time_ lycal]'
'”
$request'$ status $body_bytes_sent
'
”
$http_referer"" $http_user_agent'
access_log/spool/logs/nginx-access.logcompression
buffer=32k;
(生产环境添加buffer,而测试环境中不添加)
string可以使用nginx核心模块及其它模块内嵌的变量
2)access_log path [format [buffer= size] [gzip[= level]] [flush= timeif= condition]];
access_ log off;
访问日志文件路径,格式及相关的缓冲的配置
buffer=size
flush=time
3)open_log_file_cache max=N[inactive=time][min__uses= N]
[valid =time];
open_log_file_cache off;
缓存各日志文件相关的元数据信息
max :缓存的最大文件描述符数量
min_uses :在inactive指定的时长内访问大于等于此值方可被当作活动项
inactive :非活动时长
valid:验证缓存中各缓存项是否为活动项的时间间隔
四、ngx_http_gzip_module
用gzip方法压缩响应数据,节约带宽
1.gzip on|off;
启用或禁用gzip压缩
2. gzip_comp_level level;
压缩比由低到高:1到9
默认:1
3.gzip_disable regex
匹配到客户端浏览器不执行压缩
4.gzip_min_length length;
启用压缩功能的响应报文大小阈值
5.gzip__http__version 1.0 | 1.1;
设定启用压缩功能时,协议的最小版本
默认: 1.1
6.gzip_buffers number size;
支持实现压缩功能时缓冲区数量及每个缓存区的大小
默认:324k或168k
7.gzip_types mime-type ...
指明仅对哪些类型的资源执行压缩操作;即压缩过滤器
默认包含有text/html ,不用显示指定,否则出错
8.gzip_vary on | off;
如果启用压缩,是否在响应报文首部插入"Vary: Accept- Encoding"
9.gzip__proxied off|expired|no-cache|no-store| private|
no_last_modified| no_etag| auth| any ...
nginx充当代理服务器时,对于后端服务器的响应报文,在何种条件下启用压缩功能.
off :不启用压缩
expired , no-cache, no-store , private :对后端服务器的响应报文首部Cache-Control值任何一个,启用压缩功能
示例 :
gzip on;
gzip__comp_level 6;
gzip_min_length 64;
//达到64字节进行压缩
gzip_proxied any;
gzip_types text/xml text/Css application/javascript;
//
对何种类型的文本进行压缩。而默认包含的有text/html ,其不用显示指定,否则将会出错。
不压缩时,文件十分庞大,将会导致浪费资源。
可以在响应报文首部插入"Vary: Accept- Encoding",以表示此间已压缩。生产过程中,服务器通常都需要压缩。