Nginx代理URl失败

时间:2019-06-22 04:26:20

标签: nginx nginx-reverse-proxy nginx-config

我想在私有网络的前端托管一个Nginx代理,所有私有客户端用户都可以通过代理服务器与特定的URL对话。但是,一旦它连接了URL,就会发生身份验证重定向,并且时间UR1发生了变化,并且由于我的专用网络无法连接其他URL(互联网被阻止),因此它越来越超时。有人可以分享一些想法解决此问题吗?

我在下面粘贴了我的配置

server {
        listen 0.0.0.0:443 ssl;
        server_name    k8s.cluster.mstsg.com;
        ssl_certificate /var/tmp/omni/fullchain.pem ;
        ssl_certificate_key /var/tmp/omni/privkey.pem ;
        ssl_ciphers         EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
        ssl_protocols        TLSv1.2;
        error_log    error.log debug;




        location /{
           proxy_pass https://ms-tsg.cp.cloud;
           proxy_ssl_server_name on;
           proxy_set_header Host ms-tsg.cp.cloud;
           proxy_ssl_server_name on;
        }

a)客户端将访问作为代理服务器的URL k8s.cluster.mstsg.com b)然后将其转发到“ https://ms-tsg.cp.cloud”,然后将其重定向到另一个URL“ https://auth-tsg.cp.cloud”进行身份验证。 c)浏览器在身份验证重定向期间将失败,原因是我的客户端只能访问代理,并且当标头中的URL更改时,它就超时了。

任何机构都可以分享一些建议吗?

1 个答案:

答案 0 :(得分:0)

这是代理的典型问题。您想要的是在代理时覆盖返回网址

location /{
   proxy_pass https://ms-tsg.cp.cloud;
   proxy_ssl_server_name on;
   proxy_set_header Host ms-tsg.cp.cloud;
   proxy_redirect https://auth-tsg.cp.cloud https://k8s2.cluster.mstsg.com
   proxy_ssl_server_name on;
}

然后,您将需要使用server_name作为k8s2.cluster.mstsg.com创建一个虚拟服务器,然后将其proxy_pass复制到auth-tsg.cp.cloud