• WAP手机版 加入收藏  设为首页
服务器类

nginx设置下载限速和防盗链的方法。

时间:2016-10-20 12:20:26   作者:哎丫丫整理   来源:互联网   阅读:305   评论:0

首先在nginx.conf种启用限速模块

geo $rt_filtered_ip{

default $binary_remote_addr;

127.0.0.1      "";

192.168.1.0/24 "";

10.1.0.0/16    "";

192.168.10.0/24 "";

2001:0db8::/32 "";

 

}

#第一个参数:$binary_remote_addr 表示通过remote_addr这个标识来做限制,“binary_”的目的是缩写内存占用量,是限制同一客户端ip地址

#第二个参数:zone=one:10m表示生成一个大小为10M,名字为one的内存区域,用来存储访问的频次信息

#第三个参数:rate=1r/s表示允许相同标识的客户端的访问频次,这里限制的是每秒1次,还可以有比如30r/m的

#第二段配置

#第一个参数:zone=one 设置使用哪个配置区域来做限制,与上面limit_req_zone 里的name对应

#第二个参数:burst=5,重点说明一下这个配置,burst爆发的意思,这个配置的意思是设置一个大小为5的缓冲区当有大量请求(爆发)过来时,超过了访问频次限制的请求可以先放到这个缓冲区内

#第三个参数:nodelay,如果设置,超过访问频次而且缓冲区也满了的时候就会直接返回503,如果没有设置,则所有请求会等待排队

#下面这个配置可以限制特定UA(比如搜索引擎)的访问

limit_conn_zone $binary_remote_addr zone=perip:10m;

limit_conn_zone $server_name zone=perserver:10m;

#limit_conn_zone $host$uri zone=peruri:10m;

limit_req_zone $rt_filtered_ip zone=qps:10m rate=1r/s;



接着在你需要限速的vhost网站的配置文件种写入限速设置:
#定义需要被下载文件后缀名
location ~ .*\.(txt|ico|gif|png|bmp|jpg|jpeg|zip|rar|gz|7z|exe|mp3|flv|swf|pdf|docx|doc|xls|xlsx|trx|bin|mp4|apk|gz|7z)$ {
#如果设置,超过访问频次而且缓冲区也满了的时候就会直接返回503
limit_req zone=qps burst=5 nodelay;
#限定档案仅能一线程!
limit_conn perip 1;
#服务器最大支持线程
limit_conn perserver 20;
expires 30d;
# 再加上限速
limit_rate_after 1m;
limit_rate 1000k;
}

防盗链设置:
location ~ .*\.(txt|ico|gif|png|bmp|jpg|jpeg|zip|rar|gz|7z|exe|mp3|flv|swf|pdf|docx|doc|xls|xlsx|trx|bin|mp4|apk|gz|7z)$ {
valid_referers none blocked www.runs.xyz ;
if ($invalid_referer) {
rewrite ^/ https://www.runs.xyz/notlink.html;
}
}



      版权声明,所有转载都有注明出处,本站不负责承担任何法律责往。若有侵权,请联系我。我会及时删除。

专业从事于个人电脑维护,系统安装,软 、硬件维修,电脑配件,零售业务,网站建设,路由器安装设置 服务器维护,电脑、网络维护,智能手机刷机,安装WIFI 调试!

        咨询电话:13762514403  点击这里给我发消 息
        手机用户选择任意下面一种方法关注微文号
       点击我关注微信、扫描二维码、添加 订阅号
cz612459”     分享资讯、享受生活          


      

相关评论
免责申明:本站部分资料来源互联网,如果侵犯了您的版权,请作者速来电或QQ与本站联系,我们将第一时间给予以改正或删除。
Copyright© 2014-2016 哎丫丫 湘ICP备14010293号 湘公网安备43100202000036号
点击这里给我发消息