Nginx 기초 입문

3224 단어
응용 장면
  • http 서버.Nginx 는 http 서 비 스 를 독립 적 으로 제공 할 수 있 는 http 서비스 입 니 다.(웹 페이지 정적 서버 를 만 들 수 있 습 니 다)
  • 가상 호스트.한 서버 에서 여러 사 이 트 를 가상 으로 만 들 수 있다.예 를 들 어 개인 사이트 에서 사용 하 는 가상 호스트.
  • 역방향 대리, 부하 균형.사이트 의 방 문 량 이 어느 정도 에 이 르 렀 을 때 한 대의 서버 가 사용자 의 요 구 를 만족 시 키 지 못 할 때 여러 대의 서버 클 러 스 터 로 Nginx 를 사용 하여 역방향 프 록 시 를 할 수 있어 야 한다.또한 여러 대의 서버 는 평균 적 으로 부 하 를 분담 할 수 있 으 며, 한 서버 의 부하 가 높 아 지연 되 지 않 아 한 서버 가 방치 되 어 있 는 경우 도 없다.

  • 역방향 에이전트
        server {
            listen   80;
            server_name  www.honva6.dev.com;
    
            location / {
                proxy_pass 127.0.0.1:8080;
                index  index.html index.htm;
            }
    

    listen 는 nginx 기본 감청 포트 번호, servername 은 사용자 가 방문 한 도 메 인 주소, location / 모든 요청 을 차단 한 후 127.0.0.1: 8080 포트 주소 로 이동 합 니 다.
    부하 균형
  • 폴 링 메커니즘
  • 가중치
  • ip 귀속
  • #upstream backserver          ,weight          ,             。  2:1   4:2    
        upstream backserver{
            server 127.0.0.1:8080 weight=2;
            server 127.0.0.1:8081 weight=1;
        }
        
        server {
            listen   80;
            #              
            server_name  www.honva6.dev.com;   
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                proxy_pass http://backserver;
                index  index.html index.htm;
            }
        }
    

    지연 폴 링 메커니즘
    클 러 스 터 서버 에 다운 이 있 으 면 클 러 스 터 의 다음 서버 에 자동 으로 접근 하여 사용자 의 조작 에 영향 을 주지 않 습 니 다.제3자 도구 keepaalive 를 사용 할 수도 있 습 니 다. 기계 가 다운 되면 서버 를 다시 시작 하 는 스 크 립 트 를 자동 으로 실행 합 니 다.
    location / {
                proxy_pass http://backserver;
                index  index.html index.htm;
                #        
                #      1s,           
                proxy_connect_timeout 1;
                #         1s,           
                proxy_send_timeout 1;
                #       1s,           
                proxy_read_timeout 1;
            }
    
    

    Nginx 차원 에서 크로스 필드 문 제 를 해결 합 니 다.
    server {
            listen       80;
            server_name  www.itmayiedu.com;
            #     A   ,   A     
            location /A {
                proxy_pass  http://a.a.com:81/A;
                index  index.html index.htm;
            }
            #     B   ,   B     
            location /B {
                proxy_pass  http://b.b.com:81/B;
                index  index.html index.htm;
            }
        }
    

    Nginx 도 난 방지 체인
    server {
        location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
        {
        # 
        valid_referers blocked  *.honva6.dev.com honva6.dev.com;
        if($invalid_referer) {
        rewrite ^/ http://www.honva6.dev.com/404.jpg;
        }
        expires 30d;
    }
    

    Nginx 설정 DDOS
    http{
        #    :    ip     2   
        limit_req_zone $binary_remote_addr zone=one:10m rate=2r/s;
            server {
                ...
                location /login.html {
                #  one            /login.html   
                limit_req zone=one;
                ...
            }
        }
    }
    

    매개 변수 설명:
  • $binary_remote_addr: 클 라 이언 트 의 ip, 바 이 너 리 원 격 주소
  • zone = one: 10 m: zone 이름 을 one 으로 정의 하고 이 zone 에 10m 메모 리 를 할당 하여 세 션 (바 이 너 리 원 격 주소) 을 저장 합 니 다. 1m 메모 리 는 16000 세 션
  • 을 저장 할 수 있 습 니 다.
  • rate = 2r / s: 초당 2 개의 요청
  • 후속...

    좋은 웹페이지 즐겨찾기