Nginx 访问控制 (转)

http://hi.baidu.com/%D0%A1%D0%A1%D4%CB%CE%AC/blog/item/f5f9c8d205607a349b502719.html
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
    http://count.linuxtone.org/tongji/data/index.html(目录存在/data/www/wwwroot/tongji/data/目录下)
    将下段配置放到虚拟主机目录,当访问http://count.linuxtone/tongji/即提示要密验证:
    location ~ ^/(tongji)/  {
                    root    /data/www/wwwroot/count;
                            auth_basic              "LT-COUNT-TongJi";
                            auth_basic_user_file  /usr/local/nginx/conf/htpasswd/tongji;
                    }


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

如,Nginx下禁止访问 *.txt文件,配置方法如下.
方法1:
    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;
    }

详细参见wiki: http://wiki.codemongers.com/NginxHttpAccessModule#allow



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 limit
                   location / {
                       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;         

猜你喜欢

转载自0001111.iteye.com/blog/1458699