配置wile反向代理的Nginx错误在启动nginx时显示“欢迎使用nginx”

时间:2018-01-14 18:18:08

标签: node.js ubuntu express nginx

这是我第一次玩nginx。我有两台快速服务器在我的localhost中运行在端口3001和3002中。哪个运行正常。 我正在使用ubuntu这些是我为nginx采取的步骤。

  • 首先我使用了sudo apt-get install nginx

  • 删除已启用网站和网站可用 sudo rm的默认文件 -f default

  • 在网站中创建默认文件 - 我有这些代码的地方(目前只是尝试在端口3001中运行一台服务器。) sudo vi default 服务器    {  听80;
     地点 /      {       proxy_pass“http://192.168.100.5:3001”;       }   }

  • 符号链接默认来自站点 - 可用于启用站点: sudo ln -s / etc / nginx / sites-available / default / etc / nginx / sites-enabled / default

  • 启动nginx sudo /etc/init.d/nginx start

我得到的是欢迎来到nginx如果您看到此页面,则nginx Web服务器已成功安装并正常运行。需要进一步配置。

  • 我也尝试在已启用网站的

    中使用此配置

    上游项目{     服务器http://localhost:3001;     } 服务器{     听80;     } }

但它产生相同的结果。请任何指导都会有所帮助。谢谢。

2 个答案:

答案 0 :(得分:1)

尝试将proxy_pass与本地主机一起使用,不加引号。

假设您希望端口3001上的应用程序作为您的网站,您需要将其配置为:

location / {
    proxy_pass http://localhost:3001/;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

此代码必须位于server文件的default块中。

它会将所有流量从位置/(您的网络根目录)传递到端口3001

完整的示例如下所示:

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

    server_name example.com;

    location / {
        proxy_pass http://localhost:3001/;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

说明:

  

proxy_pass http://localhost:3001/;

这会将所有流量传递到port 3001

  

proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for;

这将传递信息,例如调用代理服务器的IP。

  

proxy_set_header X-Forwarded-Proto $ scheme;

这将转发请求的已使用的sheme /协议信息。

答案 1 :(得分:1)

主要是您的配置文件问题。 请参阅下面的示例,在3000和3001端口中运行的不同快速应用程序。这是配置文件在我的nginx配置文件中的样子

server {  
    listen 0.0.0.0:80;
    server_name stage.chat.in www.stage.chat.in;
    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $proxy_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass  http://127.0.0.1:3000;
    }
}
server {  
    listen 0.0.0.0:80;
    server_name api.chat.in www.api.chat.in;
    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $proxy_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass  http://127.0.0.1:3002;
    }
}