后端服务器响应后更改主机header

change the host header after the backend server responds

我有一个代理设置来接收来自 external.example.com 的 www.example.com 的客户端请求(www.example.com 是 external.example.com 上的一个选项卡)。代理接收请求并发送到 www.example2.com 到具有多个主机 headers 的网站的后端服务器。现在,当 www.example2.com 以路径和查询字符串 ex : https://www.example2.com/results . I want this intercepted by the proxy and have the proxy change just the header to http://www.example.com 响应时,无需进入循环并显示结果。我试过 proxy_set-header host 和 proxy_redirect 都失败了。下面是我的配置:

    server {
    listen 80;
    listen [::]:80;

   server_name www.example.com;

    #root /var/www/www.example.com;
    #index index.html;

   location / {
   proxy_pass http://www.example2.com;
  proxy_set_header Host http://www.example.com;
  OR
  Proxy_redirect https://www.example2.com http://www.example.com
              }
           }  

我正在对 aws elb 后面的 URL 执行 proxy_pass。 elb 正在剥离 set host header commands 和 proxy redirects 。 IO 将其更改为特定实例,并按预期开始工作。感谢您的帮助@nbari