13432878738 发表于 2018-11-8 10:20:47

nginx限制ip访问 nginx访问权限

  一、服务器全局限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 ^~ /test/ {
  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;
页: [1]
查看完整版本: nginx限制ip访问 nginx访问权限