nginx限制ip访问权限

来源:互联网 发布:linux varlog 删除 编辑:程序博客网 时间:2024/05/01 11:15
一、服务器全局限IP
#vi nginx.conf
    allow 10.57.22.172;
    deny all;


二、站点限IP
#vi vhosts.conf
站点全局限IP:
location / {
    index  index.html index.htm index.php;
    allow 10.57.22.172;
    deny all;


    location ~ \.php$ {
        if ( $fastcgi_script_name ~ \..*\/.*php ) {return 403;}
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www/htdocs$fastcgi_script_name;
        include fastcgi_params;
    }
}


站点IP限目录:
location / {
    index  index.html index.htm index.php;
}


location ^~ /liuwx/ {
    allow 10.57.22.172;
    deny all;


    if ( $fastcgi_script_name ~ \..*\/.*php ) {return 403;}
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /var/www/htdocs$fastcgi_script_name;
    include fastcgi_params;
}


location ~ \.php$ {
    if ( $fastcgi_script_name ~ \..*\/.*php ) {return 403;}
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /var/www/htdocs$fastcgi_script_name;
    include fastcgi_params;
}
 
注意事项:
  1. deny 一定要加一个ip,否则直接跳转到403,不往下执行了;如果403默认页是同一域名下,会造成死循环访问;
  2. allow的ip段
  从允许访问的段位从小到大排列,如127.0.0.0/24 下面才能是10.10.0.0/16
  24表示子网掩码:255.255.255.0
  16表示子网掩码:255.255.0.0
  8表示子网掩码:255.0.0.0
  3. deny all;结尾 表示除了上面allow的其他都禁止
如:

           deny 192.168.1.1;           allow 127.0.0.0/24;           allo w 192.168.0.0/16;           allow 10.10.0.0/16;           deny all;


转自:http://hi.baidu.com/woaidelphi/item/31ef1a267f2b4e8a6e2cc340?qq-pf-to=pcqq.c2c

0 0
原创粉丝点击