proxy_pass和fastcgi_pass区别,反向代理,负载均衡、
nginx+fas。。。
⽬录
1、准备两个tomcat和⼀个
1.1、tomcat:
1.2、tomcat:
1.3、nginx:
2、proxy_pass
2.1、反向代理
介绍:127.0.0.1的80端⼝转发到127.0.0.1:8080. 。在这⾥127.0.0.1就类似于服务器的ip地址同理。
效果展⽰
2.2、反向代理-使⽤
upstream
2.3、反向代理--轮循模式
轮询⽅式是默认⽅式,每个请求按照时间顺序逐⼀分配到不同的后端服务器进⾏处理,如有服务器宕机会被⾃动剔除。
1
server {2
listen 80;3
server_name ; #域名4
location / {5
proxy_pass 127.0.0.1:8080;6
client_max_body_size 1024m; #请求体⼤⼩设置7 }8 }
1
upstream tomcat{ 2
server 127.0.0.1:8081;3
}4
5
server {6
listen 80;7
server_name ; #域名8
location / {9
proxy_pass tomcat;10
client_max_body_size 1024m; #请求体⼤⼩设置11 }12 }
1# 负载均衡-轮循模式
2 upstream tomcat{
3 server 127.0.0.1:8080;
4 server 127.0.0.1:8081;
5 }
6
7 server {
8 listen 80;
9 server_name ; #域名
10 location / {
11 proxy_pass tomcat;
12 client_max_body_size 1024m; #请求体⼤⼩设置
13 }
14 }
访问的时候刷新,会发现每次都不⼀样。为轮循
2.4、反向代理-负载均衡-权重模式
权重⽅式是利⽤weight指定的权重⽐率,与访问率成正⽐。⽤于后端服务器性能不均的情况。
# weigth参数表⽰权值,权值越⾼则被分配到的概率越⼤。测试的时候发现weight=3,刷新的时候8080端⼝就刷出3次# max_fails允许请求失败的次数默认为l
# fail_timeoutq请求失败后暂停服务的时间
# backup预留的备份机器
# down表⽰当前的server暂时不参与负载均衡。
1# weigth参数表⽰权值,权值越⾼则被分配到的概率越⼤。测试的时候发现weight=3,刷新的时候8080端⼝就刷出3次
2# max_fails允许请求失败的次数默认为l
3# fail_timeoutq请求失败后暂停服务的时间
4# backup预留的备份机器
5# down表⽰当前的server暂时不参与负载均衡。
6upstream tomcat{
7 #weigrt权重值(越⼤访问率⼤),在fail_timeout时间内检查后端服务器max_fails次,失败则被剔除;
8 server 127.0.0.1:8080 weight=3 fail_timeout=30s max_fails=2;
9 server 127.0.0.1:8081 weight=1 fail_timeout=30s max_fails=2;
10 }
11
12 server {
13 listen 80;
14 server_name ; #域名
15 location / {
16 proxy_pass tomcat;
17 client_max_body_size 1024m; #请求体⼤⼩设置
18 }
19 }
2.4、反向代理-负载均衡-ip_hash⽅式
ip_hash⽅式是按每个请求访问IP的结果分配,可以使每个访客固定访问⼀个后端服务器,可以解决Session共享的问题。⼀般情况下不太建议使⽤这种⽅式
1# ip_hash;
2 upstream tomcat{
nginx和网关怎么配合使用3 ip_hash;
4 server 127.0.0.1:8080 fail_timeout=5s ;
5 server 127.0.0.1:8081 fail_timeout=5s ;
6 }
7
8 server {
9 listen 80;
10 server_name ; #域名
11 location / {
12 proxy_pass tomcat;
13 client_max_body_size 1024m; #请求体⼤⼩设置
14 }
15 }
3、⽹关代理fastcgi_pass(php+nginx配合)
fastcgi介绍:CGI全称是“”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进⾏“交谈”的⼀种⼯具,其程序⼀般运⾏在上。 CGI可以⽤任何⼀种语⾔编写,只要这种语⾔具有标准输⼊、输出和。如,,tcl等。
这种模式⼀般和php配合⼀起使⽤所以我们⾸先要安装php
3.1、php安装(本⼈安装的是php-7.3.1)
3.1.1、php下载
3.1.2、php配置
进⼊PHP安装⽬录,复制⼀份php.ini-development改名为php.ini放到安装路径下,打开到"extension_dir",去掉注释符,将值改为"PHP安装路径\ext"。我当前的是:extension_dir = "E:\php\php-7.3.1\ext"
如图:
3.2、开启cgi端⼝
1// 命令,在控制台执⾏
2E:\php\php-7.3. -b 127.0.0.1:9000 -c E:\php\php-7.3.1\php.ini 如图:
3.3、fastcgi_passnginx配置
3.3.1、新建⽂件夹:E:\php\www 。然后创建两个⽂件
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论