tset123 发表于 2018-11-16 11:08:31

nginx 限制IP

  一、服务器全局限IP
  #vi nginx.conf
  allow x.x.x.x;#允许的IP
  deny all;
  
  二、站点限IP
  #vi vhosts.conf
  站点全局限IP:
  location / {
  indexindex.html index.htm index.php;
  allow x.x.x.x;
  deny all;
  location ~ \.php$ {
  if ( $fastcgi_script_name ~ \..*\/.*php ) {return 403;}
  fastcgi_pass   127.0.0.1:9000;
  fastcgi_indexindex.php;
  fastcgi_paramSCRIPT_FILENAME/var/www/htdocs$fastcgi_script_name;
  include fastcgi_params;
  }
  }
  站点IP限目录:
  location / {
  indexindex.html index.htm index.php;
  }
  location ^~ /test/ {
  allow x.x.x.x;
  deny all;
  if ( $fastcgi_script_name ~ \..*\/.*php ) {return 403;}
  fastcgi_pass   127.0.0.1:9000;
  fastcgi_indexindex.php;
  fastcgi_paramSCRIPT_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_indexindex.php;
  fastcgi_paramSCRIPT_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 192.168.1.0/24;
  allow 192.168.0.0/16;
  allow 192.0.0.0/8;
  deny all;

页: [1]
查看完整版本: nginx 限制IP