首页 > 解决方案 > Nginx 反向代理 - 从代理服务器完成页面渲染

问题描述

我正在尝试通过代理服务器呈现页面/网址,显然并非我所有的浏览器调用都从代理服务器中提取 gif/images/js 等。大多数呼叫都通过 CDN/Source-ip 等。我想以这样的方式设置代理,每个网络呼叫都通过代理服务器。

浏览器 --> 代理服务器 --> 目标 ip(反之亦然)

 server_name proxy.example.com;
 location / {
          proxy_pass https://ziplinetest-ed.my.salesforce.com/;
          include /etc/nginx/proxy_params;
        }

代理参数:

proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;


client_max_body_size 100M;
client_body_buffer_size 1m;
proxy_intercept_errors on;
proxy_buffering on;
proxy_buffer_size 128k;
proxy_buffers 256 16k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_max_temp_file_size 0;
proxy_read_timeout 300;

当我点击https://proxy.example.com时,它确实将我带到https://ziplinetest-ed.my.salesforce.com/浏览器中的大多数 imgs/js 脚本来自 salesforce 直接(而不是通过代理人)。任何人都知道如何实现这一目标?

一旦我通过 proxy.example.com 登录到 SF,它就会重定向到“na50.lightning.force.com”。没有电话从那里通过代理。

我不确定是否可以通过反向代理服务器,如果我选择了错误的路径,请指导我。

标签: nginxsalesforcereverse-proxynginx-reverse-proxy

解决方案


尝试添加:

proxy_pass https://ziplinetest-ed.my.salesforce.com;
proxy_redirect https://ziplinetest-ed.my.salesforce.com http://$server_name;

推荐阅读