场景一:同一台服务器上,通过nginx代理其他容器————例如tomcat
1、修改nginx的default.conf文件,修改后如下
server{ listen 80; # 监听80端口 server_name localhost; # 请求的域名 location / { root /usr/share/nginx/html; index index.html index.htm; } location /proxy { proxy_pass http://87.68.103.145:8001; } }
最主要的就是proxy_pass这行代码,本质上可以看成url的转发。
注:通过正则表达式匹配进行反向代理
location ~ /proxy/ { proxy_pass http://47.98.203.175:8001; } location ~ /proxy2/ { proxy_pass http://47.98.203.175:8080; }
主要区别就是多了~,一定要有路径末尾的/
即[~ /xxx/] 这种路径配置就是正则,nginx会根据你输入的路径中是否包含此内容来匹配要代理到哪一个服务器。
场景二:负载均衡(至少两台服务器)
1、修改nginx.conf(在htpp块中添加如下代码)
# 配置负载均衡 方案一:轮询 (一个接一个访问) upstream myserver{ server 192.168.50.130:8080; server 192.168.50.131:8080; } # 配置负载均衡 方案二:weight (权重 数值越大,访问的频率越大) # upstream myserver{ # server 192.168.50.130:8080 weight=10; # server 192.168.50.131:8080 weight=5; # } # 配置负载均衡 方案三:ip_hash (哈希 每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题) # upstream myserver{ # ip_hash; # server 192.168.50.130:8080; # server 192.168.50.131:8080; # } # 配置负载均衡 方案四:fair (第三方 按后端服务器的响应时间来分配请求,响应时间短的优先分配) # upstream myserver{ # fair; # server 192.168.50.130:8080; # server 192.168.50.131:8080; # }
2、修改default.conf文件
location / { proxy_pass http://myserver; }
标签:负载,8080,192.168,server,Nginx,反向,proxy,location From: https://www.cnblogs.com/ReturnOfTheKing/p/17055574.html