nginx 의 도 난 방지 체인, 동정 분리, 캐 시, 부하 균형, 역방향 에이전트

1. 도 난 방지 체인 은 두 가지 실현 방식 이 있다.
첫 번 째 는 URL 재 작성 모듈 을 사 용 했 습 니 다.
location ~.*\.(jpg|gif|png)$ {
       valid_referers none blocked *.demo.com demo.com 192.168.1.175;
       if ( $invalid_referer ) {
               #rewrite ^/       ;
               return 403;
       }
}

해석: 파일 이 jpg, gif, png 형식 으로 판단 되 는 경우 (파일 의 접 두 사 를 임의로 설정 할 수 있 음) 다음 작업 을 수행 합 니 다.
valid_referers   뒤쪽 은 none 으로 설정 되 어 있 으 며, 본 사이트 의 방문 을 허용 합 니 다.
blocked  나중에 접근 할 수 있 는 링크, 주소
두 번 째 는 nginxaccesskey 모듈 설정
우선 Nginx - accesskey - 2.0.3. tar. gz 설치 패 키 지 를 다운로드 하고 압축 을 풀 고 config 파일 을 열 어 HTTP 를 수정 해 야 합 니 다.MODULES = "$HTTP MODULES $HTTP ACCESSKEY MODULE"
HTTP_MODULES="$HTTP_MODULES ngx_http_accesskey_module",

다음 저장 종료
우 리 는 phpinfo () 에서 볼 때 이 모듈 을 성공 적 으로 설치 할 수 있 습 니 다.
다음 단 계 는 설정 파일 에서 설정 하 는 것 입 니 다.
location /download {
        accesskey             on;
        accesskey_hashmethod  md5;
        accesskey_arg         "key";
        accesskey_signature   "mypass$remote_addr";
    }
해석: download 폴 더 에 있 는 파일 에 도 난 방지 설정
방문 테스트 스 크 립 트 는 다음 과 같 습 니 다:
<?php
$ipkey= md5("mypass".$_SERVER['REMOTE_ADDR']);
$output_add_key="<a href=http://www.example.cn/download/G3200507120520LM.rar?key=".$ipkey.">
download_add_key</a>";
$output_org_url="<a href=http://www.example.cn/download/G3200507120520LM.rar>download_org_path</a>";
      
echo $output_add_key;
echo "<br>";
echo $output_org_url;
?>

첫 번 째 download 방문add_key 링크 는 정상적으로 다운로드 할 수 있 습 니 다. 두 번 째 링크 downloadorg_path 는 403 Forbidden 오 류 를 되 돌려 줍 니 다.
2. 움직임 분리
  동정 분리 란 정적 페이지 와 정적 페이지 를 분리 해서 접근 하 는 것 입 니 다. 설정 파일 에 판단 할 수 있 습 니 다.
location ~ (\.php)$ {
                proxy_pass http://192.168.1.175:80;
  }

동적 페이지 로 판단 되면 뒤쪽 주 소 를 방문 합 니 다.
3. 캐 시
① 설정 파일 에 설정
proxy_cache_path /data/nginx/cache/webserver levels=1:2 keys_zone=webserver:20m max_size=1g;    
server { 
       listen       80; 
       server_name  localhost;        #charset koi8-r; 
       #access_log  logs/host.access.log  main;        
        location / { 
               proxy_pass      http://webservers; 
               proxy_set_header  X-Real-IP  $remote_addr;           
                 proxy_cache webserver;           
                proxy_cache_valid 200 10m;    
        }
}

설정 후 다시 시작, 다시 시작 오류, 빈 칸 을 디 버 깅 하면 됩 니 다.
② 캐 시 디 렉 터 리 만 들 기
mkdir -pv /data/nginx/cache/webserver

③, 우 리 를 방문 하면 디 버 깅 도구 로 캐 시 여 부 를 볼 수 있 고 캐 시 라면 볼 수 있 습 니 다.   X-cache=HIT
4. 부하 균형
부하 균형 이란 서버 의 균형 력 을 조절 하여 서버 의 감당 능력 을 고 르 게 하 는 것 이다.
설정 은 다음 과 같 습 니 다:
Upstream        {
      server 192.168.1.252:80;
      server 192.168.1.253:80;      
}
server {
      listen       80;
      server_name  localhost;
  ………………
      location / {
               proxy_pass http://     
               proxy_set_header Host   $host;
               proxy_set_header X-Peal-IP $remote_addr;
              proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
      }
}

이렇게 하면 우리 가 몇 대의 서버 가 있 든 몇 대 를 추가 하면 서버 의 균형 을 이 룰 수 있다.
5. 역방향 대리
역방향 프 록 시 란 이 서버 를 정의 하고 자신 이 지정 한 다른 서버 를 대리 하 는 것 이다.
설정 은 다음 과 같 습 니 다.
location / {
    proxy_pass             IP;
}

특히 상기 설정 이 완료 되면 nginx 를 다시 불 러 와 야 합 니 다.
다시 불 러 오기 명령 nginx -s reload
여러 번 의 테스트 를 통 해 사용 되 지 않 으 면 nginx 를 죽 이 고 nginx 를 시작 합 니 다.
프로 세 스 보기 ps aux | grep nginx     죽이다 kill -9  프로 세 스 번호

좋은 웹페이지 즐겨찾기