1.修改nginx配置文件:
在server中添加下面内容
location /test/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.10.10:8082/test2/;
}
2.重启nginx
/usr/local/nginx/sbin/nginx //启动
/usr/local/nginx/sbin/nginx -s stop //停止
/usr/local/nginx/sbin/nginx -s reload //重启
说明:本地nginx地址是127.0.0.1,端口号80,现前台直接调用192.168.10.10服务器上http://192.168.10.10:8082/test2/接口,会报跨域请求问题。nginx反向代理后,访问http://127.0.0.1/test/service接口,代理访问http://192.168.10.10:8082/test2/service接口,解决跨域问题。
正向代理代理客户端,反向代理代理服务器。反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
注意:需要修改前台调用接口url,配置成http://127.0.0.1/test。