nginx 역방향 대리 부하 균형 기업 사례

  • 작업 문제 설명: 먼저 기업 사례 수 요 를 정리 합 니 다. 사용자 가 www. etiantian. org / upload / xx 주 소 를 요청 할 때 upload 업로드 서버 풀 에서 처리 요청 을 실현 합 니 다.사용자 가 www. etiantian. org / static / xx 주 소 를 요청 할 때 정적 서버 풀 에서 요청 을 처리 합 니 다.이외에 다른 접근 요청 에 대해 서 는 모두 기본 동적 서버 풀 에서 요청 을 처리 합 니 다.사용자 요청 (URI) 처리 요청 서버 사이트 디 렉 터 리 기능 / upload 10.0.0.8: 80 html / www / upload upload 서버 / static 10.0.0.7: 80 html / www / static static 정적 서버 / 10.0.0.9: 80 html / www 기본 문제 풀이 방법: 1) nginx 사이트 서버 설정 첫 번 째 마일 리 지 완성: 테스트 환경 생 성 주석: 10.0.0.8 호스트 에 upload 디 렉 터 리 생 성,그리고 사이트 테스트 페이지 파일 cd / application / nginx / html / www / mkdir uploadcp oldboy. html upload / 주: 10.0.0.7 호스트 에 static 디 렉 터 리 를 만 듭 니 다.그 다음 에 사이트 테스트 페이지 파일 cd / application / nginx / html / www / mkdir staticcp oldboy. html static / 주: 10.0.0.9 호스트 에서 기본 테스트 페이지 파일 을 만 들 면 두 번 째 거 리 를 만 들 수 있 습 니 다. lb 01 을 이용 하여 방문 테스트 주: 10.0.0.8 방문 이 정상 적 인 curl - H host: www. etiantian. org 10.0.0.8 / upload / oldboy. htmlweb 02 www. etiantian. org 주: 테스트 10.0. 0.7 정상 적 인 curl - H host: www. etiantian. org 10.0.0.7 / static / oldboy. htmlweb 01 www. etiantian. org 주: 10.0.0.9 정상 적 인 curl - H host: www. etiantian. org 10.0.0.9 / oldboy. htmlweb 03 www. etiantian. org 2) nginx 역방향 프 록 시 설정 첫 번 째 거리: upstream 모듈 정보 upstream 업로드 설정 {server 10.0.0.8: 80;}upstream static {server 10.0.0.7: 80;} upstream default {server 10.0.0.9: 80;} 두 번 째 마일 리 지: proxy 설정pass 모듈 정보 주: 설정 후 구 글 은신 모드 로 방문 테스트 server {listen 80; server name www. etiantian. org; root html; index index. html index. htm; location / {proxy passhttp://default;proxy_set_header host $host;proxy_set_header X-Forwarded-For $remote_addr;}location /upload {proxy_pass http://upload;proxy_set_header host $host;proxy_set_header X-Forwarded-For $remote_addr;}location /static {proxy_pass http://static;proxy_set_header host $host;proxy_set_header X-Forwarded-For $remote_addr;}}작업 문제 2 설명: 사용자 요청 클 라 이언 트 소프트웨어 에 따라 서로 다른 페이지 정보 해결 방법 을 표시 합 니 다. 1) nginx 사이트 서버 설정 첫 번 째 마일 리 지: 테스트 환경 주: 10.0.0.8 호스트 에 upload 디 렉 터 리 를 만 든 다음 사이트 테스트 페이지 파일 cd / application / nginx / html / www / cat oldboy. html
  • 을 생 성 합 니 다.
    주: 10.0.0.7 호스트 에 static 디 렉 터 리 를 만 든 다음 사이트 테스트 페이지 파일 cd / application / nginx / html / www / cat oldboy. html 생 성
    주: 10.0.0.9 호스트 에 기본 테스트 페이지 파일 을 만 들 면 cd / application / nginx / html / www / cat oldboy. html
        :
    [root@lb01 conf]# curl -H host:www.etiantian.org 10.0.0.7/oldboy.html
    web01 www.etiantian.org
    [root@lb01 conf]# curl -H host:www.etiantian.org 10.0.0.8/oldboy.html
    web02 www.etiantian.org
    [root@lb01 conf]# curl -H host:www.etiantian.org 10.0.0.9/oldboy.html
    web03 www.etiantian.org
    
    2)nginx         
         :  upstream    
    upstream iphone {
    server 10.0.0.8:80;
    }
    upstream android {
        server 10.0.0.7:80;
    }
    upstream pc {
        server 10.0.0.9:80;
    }   
    
         :  proxy_pass    
     server {
     listen       80;
     server_name  www.etiantian.org;
     root   html;
     index  index.html index.htm;
     location / {
         if ($http_user_agent ~* "iphone") {
            proxy_pass http://iphone;
         }
         if ($http_user_agent ~* "android") {
            proxy_pass http://android;
         }
         proxy_pass http://pc;
         proxy_set_header host $host;
         proxy_set_header X-Forwarded-For $remote_addr;
     }

    }

    좋은 웹페이지 즐겨찾기