前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nginx反向代理与负载均衡

nginx反向代理与负载均衡

作者头像
dogfei
发布2020-07-31 10:06:05
6610
发布2020-07-31 10:06:05
举报
文章被收录于专栏:devops探索

nginx正向与反向代理

正向代理

     正向代理,就是我们常用的代理,类似于一个跳板,通俗的来说就是,我访问不了某网站,例如我想访问pornhub,但是由于一些不可描述的原因,我们是无法直接访问的,但是我们有一台服务器,这台服务器可以访问到该站,而我们恰好也能访问该服务器,所以我们就先连上这台服务器,告诉他,我想访问pornhub,然后这台服务器便去访问,最后将结果返回给我。

    正向代理是位于客户端和服务端之间的一个服务器,客户端向代理服务器发送请求并指定好目标服务器,然后代理向服务端转发请求,并将返回的结果返回给客户端。

注意

    客户端需要特殊配置才能使用,例如我们要指定账号密码和端口。

反向代理

    反向代理,对于客户端来讲,代理服务器就像目标服务器一样,当客户端向代理服务器发起请求时,客户端会认为代理服务器就是我要请求的目标服务器,所以客户端不需要做任何设置,只需要把代理当作目标就行

使用场景

  • 负载均衡
  • 动静分离
  • 外网发布

反向代理与负载均衡

环境准备
代码语言:javascript
复制
    <span class="hljs">IP</span>
  
</td>

<td>
  
    <span class="hljs">作用</span>
  
</td>

<td>
  
    <span class="hljs">备注</span>
  
</td>
代码语言:javascript
复制
    <span class="hljs">10.0.3.150</span>
  
</td>

<td>
  
    <span class="hljs">代理服务器</span>
  
</td>

<td>
  
  
</td>
代码语言:javascript
复制
    <span class="hljs">10.0.3.115</span>
  
</td>

<td>
  
    <span class="hljs">真实服务器</span>
  
</td>

<td>
  
  
</td>
代码语言:javascript
复制
    <span class="hljs">10.0.3.116</span>
  
</td>

<td>
  
    <span class="hljs">真实服务器</span>
  
</td>

<td>
  
  
</td>
部署

三台服务器分别安装三台nginx服务器,具体步骤略

配置

首先是在后端的真实服务器上配置好站点,也就是在10.0.3.115和10.0.3.116上设置好所需的配置文件,随后在代理服务器上配置upstream,然后通过一个子配置文件来指定好即可

代理服务器配置

代码语言:javascript
复制
- 10.0.3.150上修改配置文件nginx.conf
upstream test_proxy {
  server 10.0.3.115:8080 weight=1;
  server 10.0.3.116:8080 weight=1;
}
- 指定子配置文件来将请求转发给upstream
server {
  listen 80;
  server_name 10.0.3.150;

  location / {
      proxy_pass http://test_proxy;
      proxy_read_timeout 300;
      proxy_connect_timeout 300;
      proxy_redirect off;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header Host $http_host;
      proxy_set_header X-Real-IP $remote_addr;
      expires -1;
  }
}

目标服务器配置

代码语言:javascript
复制
- 10.0.3.116和10.0.3.115上配置一样
server {
  listen 8080;
  server_name 10.0.3.116;
  root /data/web;
  index index.html index.htm;

  location / {
      index index.html;
  }
}

配置完成后重启nginx即可

测试
和proxy相关的一些配置
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • nginx正向与反向代理
    • 正向代理
      • 反向代理
      • 反向代理与负载均衡
        • 环境准备
          • 部署
            • 配置
              • 测试
                • 和proxy相关的一些配置
                相关产品与服务
                负载均衡
                负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档