Nginx 는 IP 가 일부 페이지 에 접근 하 는 것 을 제한 합 니 다.

2650 단어 linuxnginx
1. 모든 IP 접근 금지 a1. htm a2. htm a3. htm 이 세 페이지 는 location 에서 이렇게 쓸 수 있 습 니 다.
location ~* /(a1.htm|a2.htm|a3.htm)$ {
        deny all;
        condition………;
}

2. 지정 한 ip 만 a1. htm a2. htm a3. htm 이 세 페이지 에 접근 할 수 있 습 니 다. 다른 IP 의 접근 은 모두 거부 합 니 다.
location ~* /(a1.htm|a2.htm|a3.htm)$ {
         allow 10.0.0.2;
         deny all;
         condition………;
}

이 설정 은 ip 주소 가 10.0.0.2 인 호스트 만 이 세 페이지 를 물 어 볼 수 있 고 다른 ip 은 모두 거부 되 었 습 니 다.다른 상황 은 이런 식 으로 유추 할 수 있다.
예 를 들 어 저 는 8.8.8.8 이 ip 만 info. phop 페이지 에 접근 할 수 있 도록 지정 해 야 합 니 다.그러면 nginx - server 에 다음 설정 을 추가 할 수 있 습 니 다. 8.8.8.8 이 아 닌 info. phop 페이지 를 방문 하면 403 뒤로 돌아 가 점프 주 소 를 추가 해 야 합 니 다. proxypass http://192.168.1.110:10480;그렇지 않 으 면 404 오류 가 발생 합 니 다.
  location ~/info.php$ {

        if ($remote_addr != '8.8.8.8' ) {
        return 403;
        }
        proxy_pass http://192.168.1.110:10480;
   }
}

server 코드 에 추가 할 수도 있 습 니 다.
location ~/info.php$ {
         allow 8.8.8.8;
         deny all;
         condition………;
}

동일 한 효과
어떻게 ip 또는 ip 세그먼트 를 사용 하지 않도록 설정 합 니까?
다음은 nginx 의 디 렉 터 리 가 / usr / local / nginx / 에 있다 고 가정 합 니 다.
먼저 ip 설정 파일 Blockips. conf 를 만 든 다음 vi blockips. conf 에서 이 파일 을 편집 하고 파일 에 봉 할 ip 를 입력 하 십시오.
deny 1.2.3.4;
deny 91.212.45.0/24;
deny 91.212.65.0/24;

그리고 이 파일 을 저장 하고 nginx. conf 파일 을 열 어 http 설정 절 에 다음 줄 설정 을 추가 합 니 다.
include blockips.conf;

nginx. conf 파일 을 저장 하고 현재 nginx 프로필 이 합 법 적 인지 테스트 합 니 다.
 /usr/local/nginx/sbin/nginx -t

설정 에 문제 가 없 으 면 출력 합 니 다:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful

설정 에 문제 가 있 으 면 문법 문제 가 있 는 지 확인 해 야 합 니 다. 문제 가 없 으 면 다음 명령 을 실행 하여 nginx 가 설정 파일 을 다시 불 러 올 수 있 도록 해 야 합 니 다.
/usr/local/nginx/sbin/nginx -s reload

일부 ip 만 페이지 에 접근 하거나 일부 ip 가 페이지 에 접근 하 는 것 을 금지 합 니 다.
 server_name es.mila66.com;
  location / {
    include /etx/nginx/all/ip.conf;
    deny all;

ip. conf 의 파일 형식:
allow 192.168.1.11;
allow 192.168.1.12;

이렇게 하면 일부 ip 만 페이지 에 접근 할 수 있 습 니 다.
일부 IP 접근 을 금지 하려 면 다음 과 같이 수정 하 십시오. allow 를 deny 로 바 꾸 면 됩 니 다.
 server_name es.mila66.com;
  location / {
    include /etx/nginx/all/ip.conf;
    allow all;

ip. conf 의 파일 형식:
deny 192.168.1.11;
deny 192.168.1.12;

nginx -s reload
서버 다시 시작

좋은 웹페이지 즐겨찾기