nginx

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > nginx > nginx正向代理,反向代理

Nginx中正向代理,反向代理,负载均衡应用场景分析

作者:小熊officer

文章介绍了nginx中反向代理、正向代理和负载均衡的概念,通过实际场景解释了它们的工作原理和特点,感兴趣的朋友跟随小编一起看看吧

1. 🔄 反向代理

情景:
顾客想买手机,他走到购物中心前台问:"手机店在哪?"
前台说:"您稍等,我帮您联系",然后前台去后面的手机店取来手机交给顾客。

技术解释:

# Nginx 配置示例
server {
    listen 80;
    server_name shopping-mall.com;
    location /phone-shop/ {
        # 将请求转发给后端的手机店
        proxy_pass http://real-phone-shop:8080;
    }
    location /clothing-shop/ {
        # 将请求转发给后端的服装店
        proxy_pass http://real-clothing-shop:8081;
    }
}

特点: 隐藏真实服务器,保护后端,统一入口

2. 🎯 正向代理

情景:
顾客想访问一个被限制的国外网站(比如某些外网),但他无法直接访问。
于是他找了一个"代理服务"(比如VPN),让代理帮他去访问那个网站,然后把内容传回来。

技术解释:

# 正向代理配置(Nginx 也可以做,但较少用)
server {
    listen 3128;  # 代理端口
    resolver 8.8.8.8;
    location / {
        # 允许客户端通过此服务器访问外部网络
        proxy_pass http://$http_host$request_uri;
    }
}

特点: 突破访问限制,隐藏客户端身份

3. ⚖️ 负载均衡

情景:
购物中心有三家一模一样的手机店(卖同样商品)。
前台看到很多顾客都要买手机,于是:

技术解释:

# Nginx 负载均衡配置
upstream phone_shops {
    # 定义三家手机店(后端服务器)
    server 192.168.1.101:8080 weight=3;  # 权重3,处理更多请求
    server 192.168.1.102:8080 weight=2;  # 权重2
    server 192.168.1.103:8080 weight=1;  # 权重1
}
server {
    listen 80;
    server_name shopping-mall.com;
    location /phone-shop/ {
        # 将请求负载均衡到三家店
        proxy_pass http://phone_shops;
    }
}

特点: 分摊压力,提高可用性,扩展性

🎯 一句话总结

概念谁被代理?为谁服务?一句话理解
反向代理服务器客户端"帮服务器接客" - 客户找代理,代理找真服务器
正向代理客户端客户端"帮客户跑腿" - 客户让代理去访问目标
负载均衡多个服务器系统整体"客流分配员" - 把客户平均分给多个服务点

🔧 实际应用场景

反向代理常见用途:

正向代理常见用途:

负载均衡常见用途:

到此这篇关于Nginx中正向代理,反向代理,负载均衡的文章就介绍到这了,更多相关nginx正向代理,反向代理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文