返回顶部

05 Nginx 反向代理

反向代理:

反向代理的基本原理

概念定义:

 

 

 

 

原理图解:

 

 

 

反向代理的优势: 

 

 

 

动静分离:

概念定义: 

 

 

web资源分类: 

 

 

 

web请求:

早期的web请求:

 

 

 

现在的web请求:

 

 

 

nginx 处理 web 请求:

 

 

静态处理是很快的,这时就有了负载均衡的概念,如下图:

 

 

 

 

nginx 反向代理时与后端交互时 支持的协议:

 

 

 

upstream 模块:

反向代理时,它用于定义上游服务(后端服务器)的相关信息,

 

 

 

upstream 指令集:

 

 

 

 

 

 

upstream 指令用法:

 

 

server 指令用法:

 

parameters 的可选值:

 

 

keepalive :

 

 

 

keepalive_requests :

 

 

keepalive_timeout :

 

 

queue(开源版本不支持): 

 

配置示例:

 

 

配置nginx 反向代理 示例:

proxy_pass 指令: 

 

proxy_pass 的语法结构:

 

参数url 的要求:

 

proxy_pass 后  带/ 和 不带 / 的区别 ***:

二者没有优劣之分,根据目录选择!

 

 

不带 /  的时候:

 

 

带/  的时候:

 

反向代理示例:

user nginx nginx;
worker_processes  auto;

events {
    worker_connections  15000;
	accept_mutex on;
	accept_mutex_delay 100ms;
	multi_accept on;
}
http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;
	upstream backend01 {
		server 192.168.144.128:8080 weight=2 max_conns=1000 fail_timeout=10s max_fails=3;
		keepalive 32;#保持空闲长连接的最大数目
	}
	upstream backend02 {
		server 192.168.144.128:8081 weight=2 max_conns=1000 fail_timeout=10s max_fails=3;
		keepalive 32;#保持空闲长连接的最大数目
	}
    server {
        listen       80;
        server_name  www.test_01.com;
        location /app01/ {
			proxy_pass http://backend01;
        }
    }
    server {
        listen       80;
        server_name  www.test_02.com;
        location /app01/ {
			proxy_pass http://backend02;
        }
    }
}
View Code

http://www.test_01.com/app01/index/

http://www.test_02.com/app01/index/ 

都能访问到上述的页面,

 

posted @ 2020-04-22 13:18  Zcb0812  阅读(170)  评论(0编辑  收藏  举报