项目要求:将甲方内网的项目能够对外访问,甲方提供一个中间过渡服务器,中间过渡服务器与外网互通,且中间服务器可以访问内网;
外网客户端->中间过渡服务器开放端口:80
中间过渡服务器->内网服务器开放端口:80、9095
系统架构:Vue + SpringBoot
服务器:
1、外网可以访问的服务器且此服务器可以访问到外网;
2、内网3台服务器,1台跳转服务器【用于做负载】,2台应用服务器;
1、这样配置的必要性
外网浏览器与内网是不通的,但是外网与中间过渡服务器是通的,中间过渡服务器与内网服务器是通的,这样在外网访问过渡服务器时,过渡服务器再跳转到后台服务器,相当于外网浏览器给内网后台服务器发送的请求,这样肯定是不通的,所以当外网浏览器访问中间过渡服务器时,中间过渡服务器做了一个代理,然后跳转到内网服务器,相当于中间过渡服务器发送的请求,这样就可以实现外网访问内网的功能了!
2、nginx.conf
server {
listen 8282;
server_name 127.0.0.1;
charset utf-8;
location / {
root dist/; #前端配置路径,自行修改
try_files $uri $uri/ /index.html last;
index index.html;
}
location /dev-api/ { #后台配置的代理服务器
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9095/; #配置的是后台内网的API地址
}