Nginx服务之配置优化学习交流

1 隐藏版本号*

方法一 :在http模块中添加行

方法二 :修改版本信息

进入源码安装包

回到安装包根目录,重新编译安装

2 更改用户和组

解释:表示主进程master会由root创建,子进程会由nginx创建,前一个是所有者,后一个是所在组。

3 、设置页面的缓存时间

主要是针对动态页面的设置

设置图片的缓存:

解释:location ~ {...}表示正则匹配,\.(gif|jpg|png)$表示以.jpg .gif .png 结尾的文件;expires 1d表示缓存时间1天。

4 、日志分割*

Apache是自带日志分割的,按天来进行日志收集。如access-2024-07-03.log

Nginx不会自动分割,需要人为设置。以下是一种简单的日志分割:

5 、绑定CPU*

nginx.conf 中worker process 2 表示进程有2个,这个和CPU数挂钩。如果不绑定CPU的话,进程可能会在两个CPU之间来回切换使用,浪费资源。

所以要让进程绑定CPU,避免进程切换。

6 连接超时

Nginx配置文件中,keepalive_timeout表示请求完成之后的连接保持时间,单位秒,一般60-120秒。其他超时设置如下:新增以下行

客户端发送一个完整的请求头的超时时间,10秒之内没有发送一个完整的请求头,Nginx返回408:request timeout

客户端和服务端建立连接之后,发送请求体的超时时间。客户端在5秒内没有发送任何内容,Nginx同样返回408

7 、配置页面压缩

nginx.conf 中,gzip on是启用页面压缩

具体配置:

8 、回收TIME_WAIT*
TIME_WAIT是TCP连接中的一种状态,出现在四次挥手之后。处于等待状态,双方不再发送数据。

TIME_WAIT所占用的系统资源很小,数量较少时,完全可以忽略不计;然而数量很多时,就会有一定影响。所以对有需要的场景,需要在断开连接后,尽快结束TIME_WAIT状态,回收系统资源。
 

统计当前系统的连接状态。

在系统内核文件中进行设置:

  1. 防止tcp的半连接队列溢出,可以达到服务端在收到tcp的syn(同步)请求时能快速响应:

     2. 允许复用TIME_WAIT状态的连接,新的连接可以直接使用TIME_WAIT状态的端口。可以提高连接的重用率。

    3.  可选项,老版本的配置,时间戳戳记也可以进行连接复用,基本不用了

    4.  控制TIME_WAIT状态的持续时间,持续65秒。注意:不是立即把TIME_WAIT的连接收回,而是尽可能地把TIME_WAIT的状态进行回收:把没用的、空闲的进行回收

9 、防盗链优化

在location模块中做以下配置:

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值