1.准备工作
准备两台带有yum安装的nginx的虚拟机,一台作为代理服务器,一台作为真实服务器。
192.168.13.133 真实服务器
192.168.13.129 代理服务器
2.配置基本的限流
“流量限制”配置两个主要的指令,limit_req_zone
和limit_req
,如下所示:
代理服务器配置(192.168.13.129):
[root@server ~]# vim /etc/nginx/conf.d/default.conf
清空并添加以下代码
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=1r/s;
upstream myweb {
server 192.168.62.157:80 weight=1 max_fails=1 fail_timeout=1;
}
server {
listen 80;
server_name localhost;
location /login {
limit_req zone=mylimit;
proxy_pass http://myweb;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
[root@server ~]# nginx -t
[root@server ~]# nginx -s reload
limit_req_zone指令定义了流量限制相关的参数,而limit_req
指令在出现的上下文中启用流量限制(示例中,对于”/login/”的所有请求)。