【问题标题】:How to deploy nodejs application on linode port 80?如何在 linode 端口 80 上部署 nodejs 应用程序?
【发布时间】:2021-08-22 23:41:02
【问题描述】:

我正在使用 Linode 实例 (Ubuntu 20) 来部署我的网站。

以默认方式运行 nginx 服务器将 IP_ADDRESS 返回到默认 nginx 页面,将 IP_ADDRESS:3000 返回到我的实际应用程序(当然,当它正在运行时)。

我想允许用户直接使用 IP_ADDRESS/ 访问我的应用程序 现在,为此我修改了两件事-

  1. /etc/nginx/sites-available/default - 将默认值更改为 root /root/APP_NAME/
  2. /etc/nginx/nginx.cong - 将用户从 www-data 更改为 root

现在,它的作用是在 plain text 中提供我的 app.js 文件,而不是实际提供应用程序,无论我是否已使用 node app.js 启动我的应用程序。

【问题讨论】:

    标签: node.js apache nginx deployment linode


    【解决方案1】:

    您无需将默认设置更改为 root /root/APP_NAME。当您这样做时,NginX 会将您的 NodeJS 应用程序文件夹中的文件作为静态文件提供。

    您需要配置 NginX 以将来自端口 80 的请求转发到 NodeJS 应用程序。

    server {
        listen 80;
    
        location / {
            proxy_set_header   X-Forwarded-For $remote_addr;
            proxy_set_header   Host $http_host;
            proxy_pass         http://127.0.0.1:3000;
        }
    }
    

    本教程一步一步讲解:https://hackernoon.com/configure-nginx-s-a-reverse-proxy-for-your-nodejs-application-9tk032e8

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-23
      • 1970-01-01
      • 1970-01-01
      • 2015-11-24
      • 1970-01-01
      • 1970-01-01
      • 2015-12-02
      相关资源
      最近更新 更多