首页 > 系统相关 >Nginx模块安装配置

Nginx模块安装配置

时间:2024-04-10 16:24:33浏览次数:29  
标签:zone nginx req Nginx limit 模块 安装

Nginx模块安装配置

一、查看nginx安装的模块

要查看Nginx安装了哪些模块,可以使用Nginx的二进制文件运行nginx -V命令。这将输出Nginx版本和配置参数,包括编译时包含的模块。

在命令行中运行以下命令:

nginx -V

查看输出中的 --with- 参数,这些参数后面通常会跟着模块名称,比如--with-http_ssl_module表明SSL模块已安装。

如果你想要获取更加详细的模块列表,可以查看Nginx的配置文件,通常在/etc/nginx/nginx.conf,或者在编译Nginx时生成的config.log文件。

例如,查看/etc/nginx/nginx.conf文件中的load_module指令,可能会加载额外的模块文件。

cat /etc/nginx/nginx.conf | grep load_module

如果你想要获取动态模块的信息,可以使用如下命令:

nginx -V 2>&1 | tr ' ' '\n' | grep -- '--add-module'

这将列出所有通过--add-module参数添加的外部模块的路径。

 

二、nginx 安装模块

Nginx 自带的模块通常是编译时内置的,无法通过 apt 安装来增加。如果你需要更多的模块,需要从源代码编译 Nginx,并在编译时添加所需的模块。

以下是编译安装 Nginx 并添加额外模块的基本步骤:

1、安装编译工具和依赖库:

sudo apt update
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

2、下载相应的版本

wget http://nginx.org/download/nginx-1.20.1.tar.gz
tar -zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1/

3、配置要添加的模块

./configure --add-module=/path/to/your/module

4、编译并安装

make
sudo make install

三、nginx限流

nginx限流可以有两种方式,包括限制并发连接数和你需要的限制访问频率,限制访问频率使用的是limit_req_zone模块。

针对你需要设置限制访问频率的虚拟服务,针对相应的server使用语法为“limit_req_zone key zone rate”的配置即可。

server块外

limit_req_zone $binary_remote_addr zone=rateLimit:1m rate=5r/s;

按照客户端ip进行限流,1m空间存储16000个ip,每秒5个连接。

server块内:

limit_req zone=rateLimit burst=10 nodelay;

表示超过访问频率的先放入大小为10的缓冲区,当该缓冲区满了的时候,nodelay直接返回503,否则等待排队。

 

配置如下表示:

`limit_req_zone`用于定义一个名为`rate_limit`的限制区域,将客户端IP地址作为键,并设置限制区域的大小为10MB,限制频率为10个请求每秒。 

在`location`块中使用`limit_req`指令来应用限流策略。`burst`参数表示在达到限制频率时,允许的最大突发请求数量,`nodelay`参数表示不延迟请求,即超过限制频率的请求将立即返回503错误。

 上述配置将每个客户端IP地址的请求限制为每秒最多10个请求,允许最大突发请求数量为20个,并在超出限制时立即返回503错误。

http {
    limit_req_zone $binary_remote_addr zone=rate_limit:10m rate=10r/s;
    server {
... location / { limit_req zone=rate_limit burst=20 nodelay; ... } } }

 

   

标签:zone,nginx,req,Nginx,limit,模块,安装
From: https://www.cnblogs.com/fieldtianye/p/18126271

相关文章

  • centos7中ffmpeg的安装方法
    Linux系统安装ffmpeg&升级ffmpeg一、介绍多媒体视频处理工具FFmpeg有非常强大的功能,包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。由于最近要处理音视频格式转换问题,因此需要安装、升级ffmpeg,下面来记录一下踩坑过程。 二、安装ffmpeg1、下载并解压ffmpeg......
  • JavaScript 模块的循环加载
    "循环加载"(circulardependency)指的是,a脚本的执行依赖b脚本,而b脚本的执行又依赖a脚本。//a.jsvarb=require('b');//b.jsvara=require('a');通常,"循环加载"表示存在强耦合,如果处理不好,还可能导致递归加载,使得程序无法执行,因此应该避免出现。 但是实际上,这是很......
  • BOSHIDA DC电源模块的功率调节和保护功能介绍
    BOSHIDADC电源模块的功率调节和保护功能介绍DC电源模块是一种用于将交流电源转化为直流电源的装置。它通常用于工业自动化设备、通信设备、医疗设备、汽车电子等领域。DC电源模块具有功率调节和保护功能,这些功能对于保证电源的稳定性和安全性至关重要。 第一,功率调节功能是D......
  • 为 .NET 安装本地化的 IntelliSense 文件
    为.NET安装本地化的IntelliSense文件先下载文件后解压,  打开文件夹后复制到对应的C盘文件夹中(这需要注意的是若安装多个Sdk需要复制多次重新启动项目即可)  ......
  • 基于Anaconda安装Pytorch
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、安装Anaconda二、安装过程中遇见的问题1.文章3.4.2安装失败总结前言Anaconda安装Pytorch具体流程与心得。一、安装Anaconda示例:pandas是基于NumPy的一种工具,该工具是为了解决数......
  • MXnet安装 与入门 符号式运算 Symbol 数据同步 KVStore 自动并行计算 数据的导出与载
    MXnet参考通过MXNet/Gluon来动手学习深度学习在线githubpdf代码深度学习库MXNet由dmlc/cxxnet,dmlc/minerva和Purine2的作者发起,融合了Minerva的动态执行,cxxnet的静态优化和Purine2的符号计算等思想,直接支持基于Python的parameterserver接口,使......
  • URB2405S-6WR3 直流稳压电源模块
    URB2405S-6WR3规格信息:商品类型电源模块DC-DC电源模块类型IsolatedModule电压输出的组数1转换效率82%最小输入电压9V最大输入电压36V隔离电压1.6kVDC输出总功率6W输出电压5V输出电流(最大值/满载)1.2AURB2405S-6WR3是MicrochipTechnologyInc.(微芯科技)公司生产......
  • 【U8+】用友固定资产模块提示网络上正在对卡片进行修改
    【问题描述】在用友U8中,针对固定资产模块中卡片,进行编辑、拆分等操作的时候,系统提示:网络上XXX正在对第XXX号卡片进行修改。无法进行操作,进而再操作就提示互斥。【解决方法】1、登录系统管理,视图下面的清理异常任务、单据锁定等反复操作。2、跟踪数据后查到【Fa_Cont......
  • python random 模块
    random说明生成伪随机数。不应将此模块的伪随机生成器用于安全目的。有关安全性或加密用途,应使用secrets模块。设置随机数种子seed(a=None, version=2)初始化随机数生成器。如果使用相同的种子,将会生成相同的随机数序列。importrandomrandom.seed(23)print(random.r......
  • freenginx 的发布速度明显加快了
    freenginx与nginx的事情大家可能都听说过,目前看freenginx迭代速度是明显加快了,目前已经发布到1.26.0了有不少bug的修复值得试用下,以下是目前最新的一些发布信息说明目前nginx的分支是越来越多了,不少项目都是从官方人员分裂出来的,angie同样也是一个nginx分支参考资料h......