nginx 역방향 에이전트 설정 과정
동기 전송: 브 라 우 저가 요청 을 하면 요청 이 바로 백 스테이지 로 넘 어가 서 브 라 우 저 와 백 스테이지 사이 에 채널 을 만 듭 니 다.요청 이 완 료 될 때 까지 이 채널 은 항상 존재 합 니 다.비동기 전송: 브 라 우 저 에서 요청 을 합 니 다. 요청 은 바로 배경 으로 돌아 가지 않 고 요청 데이터 (header) 를 먼저 nginx 에 받 은 다음 nginx 에서 이 요청 을 백 엔 드 로 보 냅 니 다. 백 엔 드 처리 후 데 이 터 를 nginx 에 되 돌려 줍 니 다. nginx 는 데 이 터 를 브 라 우 저 로 보 냅 니 다. 이 점 은 lighttpd 와 조금 다 릅 니 다.lighttpd 는 백 엔 드 데 이 터 를 완전히 수신 한 후에 야 브 라 우 저 에 보 냅 니 다.
소결: apache 와 squid 의 역방향 은 백 엔 드 웹 의 부담 을 증가 시 킬 수 있 습 니 다. 모든 사용자 의 요청 은 proxy 에서 백 엔 드 server 와 오래 연 결 됩 니 다. 데이터 가 다 되 기 전에 연결 이 사라 지지 않 는 다 는 것 을 알 기 때 문 입 니 다.wan 속도 와 lan 속도 가 다 르 기 때문에 lan 간 의 속 도 는 매우 빠 르 지만 사용자 의 wan 연결 은 이 시간 을 결정 합 니 다.한편, lighttpd 와 nginx 의 비동기 모드 는 사용자 가 요구 하 는 데이터 가 아무리 크 더 라 도 먼저 받 은 다음 에 백 엔 드 와 연락 하 는 것 입 니 다. 이것 은 매우 빠 른 속도 이기 때문에 proxy 와 백 엔 드 의 연결 시간 도 매우 짧 고 몇 십 M 의 물건 도 몇 초 입 니까?백 엔 드 는 이렇게 많은 연결 을 유지 할 필요 가 없습니다.한편, lighttpd 도 nginx 와 다른 비동기 입 니 다. lighttpd 는 먼저 받 은 다음 에 클 라 이언 트 브 라 우 저 로 전환 하고 nginx 는 데 이 터 를 받 으 면서 사용자 브 라 우 저 로 전환 합 니 다.
환경:
두 대의 개인 네트워크 웹 서버 ip: 192.168.12 정적 html 페이지 ip:192.168.1.13 동적 php 페이지
프 록 시 서버 개인 네트워크 ip: 192.168.11 인터넷
인터넷 고객
필요:
1: 인터넷 고객 은 nginx 프 록 시 서버 를 통 해 회사 홈 페이지 www. sw. com 을 방문 할 수 있다.
2: nginx 는 동적 웹 페이지 와 정적 웹 페이지 를 분리 하여 서로 다른 웹 서버 에 접근 할 수 있 습 니 다.
3: 도 난 방지 체인
실현 절차:
1: 서버 에 nginx 소스 패키지 프로그램 을 설치 하고 시작 으로 설정 하 며 메 인 프로필 을 백업 합 니 다.
[[email protected] ~]# useradd -M -s /sbin/nologin nginx //시스템 사용자 nginx 추가, 홈 디 렉 터 리 없 음 및 로그 인 금지
[[email protected] ~]#yum -y install gcc gcc-c++ make pcrc-devel openssl-devel //컴 파일 환경 개발 패키지 설치
[[email protected] ~]#mkdir /nginx //저장 폴 더 만 들 기
[[email protected] nginx-0.8.55]# ./configure --prefix=/nginx \ //원본 코드 변환, 설치 디 렉 터 리 지정
>--user=nginx --group=nginx //지정 한 프로 세 스 는 주, 그룹 에 속 합 니 다.
>--with-http_stub_status_module --with-http_ssl_module; //로드 보기 상태 모듈, ssl 모듈
[[email protected] nginx-0.8.55]# make && make install //컴 파일 설치
[[email protected] ~]# vim /etc/rc.local //부팅 스 크 립 트 에 추가
/nginx/sbin/nginx
[[email protected] ~]# cp -p /nginx/conf/{nginx.conf,nginx.conf.bak} //주 프로필 백업
2: 주 프로필 을 설정 하고 서 비 스 를 다시 시작 합 니 다.
[[email protected] ~]# vim /nginx/conf/nginx.conf
...
3 worker_processes 1; // , cpu
...
12 events {
13 worker_connections 1024; //
14 }
...
17 http {
...
20 upstream web { // web
21 server 192.168.1.12:80 weight=4; // 4, 4:1
22 server 192.168.1.13:80;
23 ip_hash; // ip web
24 }
...
122 server {
123 listen 80;
124 server_name www.sw.com;
125 location / {
128 proxy_pass http://web; // web
129 }
130 location ~* \.php$ { // php , 192.168.1.13
131 proxy_pass http://192.168.1.13;
132 client_max_body_size 10m; //
133 client_body_buffer_size 128k; // ,
134 proxy_connect_timeout 90; //nginx ( )
135 proxy_send_timeout 90; // ( )
136 proxy_read_timeout 90; // , ( )
137 proxy_buffer_size 4k; // (nginx)
138 proxy_buffers 4 32k; //proxy_buffers , 32k
139 proxy_busy_buffers_size 64k; // (proxy_buffers*2)
140 proxy_temp_file_write_size 64k; // , upstream
141 }
142 location ~* \.(gif|png|jpg|mp3|rm|flv)$ { // ,
143 valid_referers none blocked .sw.com;
144 if ($invalid_referer) { rewrite ^/ http://192.168.1.11/error.htm;}
145 }
146 }
...
156 }
[[email protected] ~]#/nginx/sbin/nginx -s stop //서비스 정지
[[email protected] ~]#/nginx/sbin/nginx //시작 서비스
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.