Nginx 作为前端代理:无法传递正确的主机名

Nginx 作为前端代理:无法传递正确的主机名
server {
    listen x.x.x.X:80;
    server_name www.x.net;
    return 301 https://$server_name$request_uri;

}

 server {

    listen x.x.x.x:443 ssl http2;
    server_name x.net www.x.net;
    root /home/x/public_html;

   location / {
        proxy_pass https://x.x.x.x:4343;
        add_header Cache-Control "public, must-revalidate, proxy-revalidate";
        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_set_header X-Forwarded-Proto https;
        include microcache.inc;
        include proxy.inc;

 }
  }

这是一个简单的设置,可以在另一台服务器上完美运行。我正在迁移,但这个设置不再适用于 nginx 1.10+

我的问题:在网站的源代码中,它显示的是实际 IP 而不是主机名。nginx 为什么会这样?我修改了 apache 的 httpd.conf,将 4343 个请求传递给 nginx。Nginx 应该可以毫无问题地为网站提供服务,但事实并非如此它没有正确显示主机名,而是使用主机 IP。

非常感谢您的意见,最可能的问题是什么?标准代理.inc..

proxy_redirect     off;
proxy_set_header   Host   $host;
proxy_set_header   Cookie $http_cookie;
proxy_set_header   X-Real-IP  $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

相关内容