Centos上配置两层nginx转发,把请求转发到外网

【机器】
内网机器A(10.1.125.10):运行python程序。
内网机器B(10.1.131.20):内网nginx代理。
外网机器C(10.1.148.30):外网nginx代理。

【目标】
在机器A上配置pip源,把外网请求mirrors.aliyun.com通过两层nginxB和C转发到外网。

【步骤】
1、在机器A上,修改pip配置,使用aliyun的镜像。
mkdir /root/.pip
vi /root/.pip/pip.conf

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/

[install]
trusted-host=mirrors.aliyun.com

 

2、在机器A上,修改 /etc/hosts 文件,加入如下一行:

10.1.131.20 mirrors.aliyun.com #指向机器B的nginx

 

3、在机器B上,修改 /etc/hosts 文件,加入如下一行:

10.1.148.30 mirrors.aliyun.com #指向机器C的nginx

 

4、在机器B上,配置nginx,增加如下配置:

server {
  listen 80;
  server_name mirrors.aliyun.com;

  location / {
    proxy_pass http://mirrors.aliyun.com;
  }
}

 

5、在机器C上,配置nginx,增加如下配置:

server {
  listen 80;
  server_name mirrors.aliyun.com;

  location / {
    proxy_pass http://mirrors.aliyun.com;
  }
}

 

到这里就配置完了,执行pip命令时,实际是请求http://mirrors.aliyun.com/pypi/simple地址,请求先从A转发到B,再从B转发到C,在从C转发到外网,最终返回结果。

posted @ 2021-01-13 17:04  卡卡西村长  阅读(1398)  评论(0编辑  收藏  举报