在 Nginx 反向代理重定向中隐藏端口

jar*_*daf 3 nginx ubuntu-14.04

我的设置如下:

  • 网络服务器:应用程序侦听端口 8529。
  • 反向代理:Nginx 监听 80 端口。

问题是我的 Nginx 将请求重定向到端口 8529,这出现在 URL 中,如下所示 http://some.domain.com:8529/foo,这不是我想要完成的。

我目前的nginxsites-available相关文件如下:

server {

  listen 80;
  server_name some.domain.com;

  location / {
    proxy_pass http://localhost:8529/foo;
    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_set_header        X-NginX-Proxy   true;
  }

}
Run Code Online (Sandbox Code Playgroud)

哪里some.domain.com/etc/hosts127.0.0.1

任何提示?

小智 5

在代理期间隐藏端口需要服务器主体中的这两行:

server_name_in_redirect off;
proxy_set_header Host $host:$server_port;
Run Code Online (Sandbox Code Playgroud)

conf是这样的:

server
{
listen 80;
server_name example.com;
server_name_in_redirect off;
proxy_set_header Host $host:$server_port;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080;
}
access_log off;
}
Run Code Online (Sandbox Code Playgroud)