貌似这个对需要的合租的小伙伴了,限制完成后你用你的我用我的,这样最后纠纷也会少很多!
本文在军哥LNMP一键包环境下测试的,主要修改有两处。
修改nginx默认配置文件,利用nginx的标准模块ngx_http_limit_zone_module,进行会话的并发连接数控制
cd /usr/local/nginx/conf vi nginx.conf
在http{}添加如下:
limit_zone one $binary_remote_addr 10m;
【说明】我们在nginx.conf中可以看到一行如下:
limit_zone crawler $binary_remote_addr 10m;
开始,我只是去除了这行前面的#,解除注解,不过报错,crawler必须替换成one。关于上面这行添加的内容,他主要是定义一个叫“one”的记录区,总容量为 10M,以变量 $binary_remote_addr 作为会话的判断基准。
为了测试,我解析了一个域名,并在VPS中添加了这个域名主机。接下来,我们需要修改第二次,就是这个域名配置文件。
- #cd /usr/local/nginx/conf/vhost
- #vi 域名.conf
- location / {
- limit_conn one 1;
- limit_rate 500k;
- }
这段表示每个客户端仅允许一个连接,限速为500KB/s。
全部修改之后,检查下配置文件和重载下nginx。
- #/usr/local/nginx/sbin/nginx –t
- #service nginx reload
其实这里我遇到一点报错,不过貌似没影响效果。
根据他这行报错,我修改过nginx.conf,可是按照他写的修改,直接配置文件检测都不通过,如果您知道怎样这个可以怎样处理掉,还请不吝赐教。
弄好之后,我放了个100MB测试文件,加了限制和不加限制的对比明显。
这个限制呢,他有一定的用处,比如自己的下载资源站之类的,但是,这并不能完全的控制盗链之类问题,我们可以用他的防盗链模块如ngx_http_referer_module,或者ngx_http_accesskey_module等,我们可以分析日志,对$http_user_agent进行匹配,然后返回503等等。
本文是小舞从赵荣部落摘抄来的,请大家支持原创作者!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)