在Nginx中,可以使用limit_conn_zone和limit_conn指令来限制每个IP的并发连接数。以下是一个配置示例:
首先,在http块中定义一个共享内存区域来存储并发连接的状态信息:
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
}
这里,$binary_remote_addr表示客户端的IP地址,zone=addr:10m定义了一个名为addr的内存区域,大小为10MB,用于存储并发连接的状态。
接着,在server或location块中应用这个限制:
server {
location / {
limit_conn addr 1;
}
}
在这个例子中,limit_conn addr 1表示每个IP地址只能同时建立1个连接。
重载或重启Nginx以应用更改:
sudo nginx -s reload
或者重启Nginx:
sudo systemctl restart nginx
确保在应用这些配置之前已经在Nginx配置中包含了http_limit_conn_module。