联系我们 - 广告服务
您的当前位置:官网首页 > 资讯 > 热评 >

nginx常用模块

来源: 编辑: 时间:2019-08-29
导读: 在企业中经常会遇到这种情况,服务器流量异常,负载过大等等。对于大流量恶意的攻击访问, 会带来带宽的浪费,服务器压力,影响业务,往往考虑对同一个ip的连接数,请求......

在企业中经常会遇到这种情况,服务器流量异常,负载过大等等。对于大流量恶意的攻击访问, 会带来带宽的浪费,服务器压力,影响业务,往往考虑对同一个ip的连接数,请求数、进行限制。

ngx_http_limit_conn_module模块可以根据定义的key来限制每个键值的连接数,如同一个ip来源的连接数。

limit_conn_module 连接频率限制

limit_req_module 请求频率限制

vim /etc/nginx/nginx.conf #主配置文件
http {
 limit_conn_zone $remote_addr zone=suibian:10m;
}
http {
 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
server {
 location /search/ {
 limit_req zone=one burst=5 nodelay;
 limit_req_status 412;
 error_page 412 /xxx/err.html
}
[root@oldboyedu ~]# yum install -y httpd-tools
[root@oldboyedu ~]# ab -n 20 -c 2 http://127.0.0.1/index.html
2018/10/24 07:38:53 [error] 81020#0: *8 limiting requests, excess: 3.998 by zone req_zone , client: 10.0.0.10, server: module.driverzeng.com, request: get /index.html http/1.0 , host: 10.0.0.10 
2018/10/24 07:38:53 [error] 81020#0: *9 limiting requests, excess: 3.998 by zone req_zone , client: 10.0.0.10, server: module.driverzeng.com, request: get /index.html http/1.0 , host: 10.0.0.10 
2018/10/24 07:38:53 [error] 81020#0: *10 limiting requests, excess: 3.998 by zone req_zone , client: 10.0.0.10, server: module.driverzeng.com, request: get /index.html http/1.0 , host: 10.0.0.10 

在nginx请求限制的过程中,我们可以自定义一个返回值,也就是错误页面的状态码。

默认情况下是503

server {
 listen 80;
 server_name module.driverzeng.com;
 charset utf-8,gbk;
 location / {
 root /code;
 index index.html index.htm;
 limit_req zone=req_zone burst=3 nodelay;
 limit_req_status 478
 #重定错误页面
 error_page 412 /err.html; #通常避免与过载冲突,定义412
vim /code/err.html 
 img >
nginx location 优先级
责任编辑:

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

网友评论:

在“\templets\demo\comments.htm”原来的内容全部删除,插入第三方评论代码,如果不需要评论功能,删除comments.html里面的内容即可
推荐使用友言、多说、畅言(需备案后使用)等社会化评论插件

Copyright © 2018 博天堂918国际娱乐博天堂918国际娱乐-搏天堂918娱乐在线 All Rights Reserved Power by DedeCms
本站所有资讯来源于网络 如有侵权请联系QQ:9490489
Top