nginx 역방향 에이전트 아파 치

9898 단어 apache.
2014 년 1 월 13 일 18: 15: 25
같은 도 메 인 이름 에서 서로 다른 uri 는 서로 다른 응용 프로그램 (서로 다른 웹 루트 디 렉 터 리) 을 사용 합 니 다.
구현 방식:
Apache 는 각각 두 포트 를 감청 하고 서로 다른 응용 프로그램 에 대응한다
nginx 감청 80 포트, location 명령 을 이용 하여 일치 하 는 디 렉 터 리 에 따라 요청 을 다른 포트 로 전송 합 니 다.
nginx 와 Apache 는 같은 windows 에 있 습 니 다.
nginx windows 버 전 다운로드, 압축 풀기 - > 간단 한 설정 에서 - > nginx 시작 보장
명령 행 이 시 작 될 때 주의해 야 합 니 다: 압축 해제 파일 에 들 어가 서 nginx. exe 를 실행 하려 면 환경 변 수 를 간단하게 쓸 수 없습니다.
다음은 나의 주 프로필 입 니 다. (이 설정 들 은 nginx 를 시작 하기에 충분 합 니 다.)
nginx.conf
 1 #user  nobody;

 2 worker_processes  1;

 3 

 4 error_log  F:/vc9server/nginx/logs/error.log;

 5 error_log  F:/vc9server/nginx/logs/error.log  notice;

 6 error_log  F:/vc9server/nginx/logs/error.log  info;

 7 

 8 pid        F:/vc9server/nginx/logs/nginx.pid;

 9 

10 events {

11     worker_connections  1024;

12 }

13 

14 http {

15     include       mime.types;

16     default_type  application/octet-stream;

17 

18     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

19                      '$status $body_bytes_sent "$http_referer" '

20                      '"$http_user_agent" "$http_x_forwarded_for"';

21 

22     access_log  F:/vc9server/nginx/logs/access.log  main;

23 

24     sendfile        on; #         

25     #tcp_nopush     on;

26 

27     #keepalive_timeout  0;

28     keepalive_timeout  65;

29     

30     server_names_hash_bucket_size 64;

31     include        apache.conf; #                  

32 }

apache.conf
 1 ##2014 1 11 

 2 #    

 3 upstream zend 

 4 {

 5     server 127.0.0.1:8089;

 6 }

 7 

 8 upstream yaf 

 9 {

10     server 127.0.0.1:8088;

11 }

12 

13 server 

14 {

15     listen       80;

16     server_name  www.example1.com;

17     

18     location ^~ /abc {

19         proxy_pass      http://zend; #        zend    

20 

21         proxy_redirect          off;

22         proxy_set_header        Host $host;

23         proxy_set_header        X-Real-IP $remote_addr;

24         proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

25     }

26     

27     location / 

28     {

29         proxy_pass      http://yaf; #        yaf    

30 

31         proxy_redirect          off;

32         proxy_set_header        Host $host;

33         proxy_set_header        X-Real-IP $remote_addr;

34         proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

35         proxy_set_header         X-Scheme $scheme;

36     }

37 }    

38 server 

39 {

40     listen       80;

41     server_name  www.example2.com;

42         

43     location / 

44     {

45         proxy_pass      http://zend; #   zend  

46 

47         proxy_redirect          off;

48         proxy_set_header        Host $host;

49         proxy_set_header        X-Real-IP $remote_addr;

50         proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

51     }

52 }

설명:
1. 요청 example 1 시
URI 는 / abc 로 시작 하 는 위 에서 정의 하 는 zend 에이전트 로 전송 되 며, 나머지 URI 는 yaf 에이전트 로 전송 을 요청 합 니 다.
2. example 2 요청 시
모든 요청 을 zend 에이전트 에 전송
3. 설정 중인 proxyset_header 는 nginx 가 받 은 요청 정보 (헤더 정보 등) 를 프 록 시 서버 에 복사 합 니 다.
4. nginx 명령 은 분점 으로 끝나 야 합 니 다. 여러 도 메 인 이름 을 감청 할 때 도 메 인 이름 간 을 빈 칸 으로 구분 한 다음 에 분점 으로 끝 냅 니 다.
 
마지막.
Apache 에서 apache. conf 에서 zend, yaf 두 에이전트 가 지정 한 도 메 인 이름 + 포트 또는 ip + 포트 를 감청 하고 해당 하 는 설정 을 합 니 다.
nginx 와 Apache 재 부팅 후 브 라 우 저 에 접근 해 보기
 

좋은 웹페이지 즐겨찾기