Nginx之路--配置正向代理、反向代理

Nginx设置正向代理、反向代理


公司有两台空闲的服务器,和老大说了一声后,就想利用一下这台空闲的服务器学习一下Nginx配置,两台服务器只有一个IP地址,A服务器有公网IP,B服务器没有公网IP,同时两个服务器私有地址在同一IP段(A–192.168.0.10,B–192.168.0.11)。想让B服务器可以访问公网,同时局域网外的用户可以访问B服务器的资源。有遗漏或者错误的地方欢迎指正

1.Nginx正向代理

在Nginx服务器(A)上的配置如下,配置完记得重启

server{
    listen 9999;//监听9999端口
    server_name _;
    location /{
        resolver 8.8.8.8 114.114.114.114;//DNS自选
        proxy_pass $scheme://$host$request_uri;
    }
}

在B服务器上的配置环境变量,添加代理

#export https_proxy=正向代理IP:端口
export https_proxy=192.168.0.10:9999

2.配置反向代理

server{
    listen    90;//可以是其他端口
    server_name xxxx.com a.xxx.com;//域名
    location /{
        proxy_set_header Host $host;
         proxy_pass    http://192.168.0.11:8090;
    }
}

3.中间遇到的问题

配置完反向代理后,访问静态资源报404,解决方案

 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${
     expires      30d;
    proxy_pass    http://192.168.0.11:8090;
    error_log off;
    access_log /dev/null;
 }

 location ~ .*\.(js|css)?${
     expires      12h;
     proxy_pass    http://192.168.0.11:8090;
     error_log off;
     access_log /dev/null; 
 }

4.结语

刚刚接触Nginx,还有许多不知道,还有需要有待了解,上述配置也只是一下简单的配置,Nginx之路还有很长,慢慢来

本作品采用《CC 协议》,转载必须注明作者和本文链接
我爱大可乐
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!