【识记】Nginx 访问控制

本文详细介绍Nginx的各种实用配置技巧,包括如何通过身份验证保护特定目录、禁止访问某些类型的文件、限制IP访问、控制下载速度及并发数、实现目录列表功能以及设置上传文件大小限制等。

1.Nginx 身份证验证

#cd /usr/local/nginx/conf
#mkdir htpasswd
/usr/local/apache2/bin/htpasswd -c /usr/local/nginx/conf/htpasswd/tongji linuxtone

#添加用户名为linuxtone
New password: (此处输入你的密码)
Re-type new password: (再次输入你的密码)
Adding password for user

#修改nginx.conf
location ~ ^/(tongji)/ {
root /data/www/wwwroot/count;
auth_basic "LT-COUNT-TongJi";
auth_basic_user_file /usr/local/nginx/conf/htpasswd/tongji;
}

http://count.linuxtone.org/tongji/data/index.html(目录存在/data/www/wwwroot/tongji/data/目录下)
将下段配置放到虚拟主机目录,当访问http://count.linuxtone/tongji/即提示要密验证:


2.Nginx 禁止访问某类型的文件.

如,Nginx下禁止访问*.txt文件,配置方法如下.

location ~* \.(txt|doc)$ {
if (-f $request_filename) {
root /data/www/wwwroot/linuxtone/test;
#rewrite …..可以重定向到某个URL
break;
}
}

方法2:
location ~* \.(txt|doc)${
root /data/www/wwwroot/linuxtone/test;
deny all;
}

实例:
禁止访问某个目录
location ~ ^/(WEB-INF)/ {
deny all;
}

3.使用ngx_http_access_module限制ip访问

location / {
deny 192.168.1.1;
allow 192.168.1.0/24;
allow 10.1.1.0/16;
deny all;
}

4. Nginx 下载限制并发和速率
limit_zone linuxtone $binary_remote_addr 10m;server{listen 80;server_name down.linuxotne.org;index index.html index.htm index.php;root /data/www/wwwroot/down;#Zone limitlocation / {limit_conn linuxtone 1;limit_rate 20k;}..........}
只允许客房端一个线程,每个线程20k.
【注】limit_zone   linuxtone  $binary_remote_addr  10m; 这个可以定义在主的

5. Nginx 实现Apache一样目录列表 
 location / {autoindex on;}

6. 上文件大小限制

主配置文件里加入如下,具体大小根据你自己的业务做调整。
client_max_body_size 10m;

转载于:https://www.cnblogs.com/tango-dg/archive/2013/04/12/3016096.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值