无法使用NGINX将端口80转发到8080

时间:2016-06-23 19:12:01

标签: nginx portforwarding

我第一次尝试设置NGINX,我需要为我的网站启用从80到8080的端口转发。然而,经过多次尝试,我什么也没得到。这是我最近的尝试:

我按照此处的步骤进行了相应的操作:https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-virtual-hosts-server-blocks-on-ubuntu-12-04-lts--3

不同之处在于我的nginx.conf文件包含:

server{
    listen 80;
    server_name myWebsiteName;

    access_log /home/path_to_site/access.log;
    error_log /home/path_to_site/error.log;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

这是正确的文件内容吗?我使用错误的教程吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

您提供的示例包含一些错误:

  • 0.0.0.0与localhost不同,您可能希望此IP地址为127.0.0.1
  • 8082与您要转发的端口不匹配(我认为是8080)。

一个固定的例子可能是:

server{
   listen 80;
   server_name myWebsiteName;

   access_log /home/path_to_site/access.log;
   error_log /home/path_to_site/error.log;

   location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   }
}

在此示例中,端口80上的所有传入请求都将代理到此主机上的端口8080。

尽管有可能,这真的是您正在寻找的解决方案吗?是否可以更改您要代理的应用程序的侦听端口?