包含 ProxyPass 和 ProxyPassReverse 的正确位置(AWS Lightsail 上的 Bitnami Node.js 服务器)

Correct place to include ProxyPass and ProxyPassReverse (Bitnami Node.js server on AWS Lightsail)

我已经在 AWS Lightsail 上设置了 Bitnami Node.js 服务器。然后我 运行 Bitnami HTTPS 配置工具:

sudo /opt/bitnami/bncert-tool

这创建了几个 Apache 配置文件,我正在尝试弄清楚如何以及在何处为我的应用程序 运行 在端口 3000 上设置代理。我已经确定了五个不同的文件,我可以可能包括代理:

/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf 
/opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf
/opt/bitnami/apache2/conf/bitnami/bitnami.conf  
/opt/bitnami/apps/letsencrypt/conf/httpd-app.conf
/opt/bitnami/apps/letsencrypt/conf/httpd-prefix.conf

目前,我已将我的代理线路包含在 /opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf 文件中。文件的全部内容如下所示:

# Bitnami applications installed in a prefix URL
Include "/opt/bitnami/apps/letsencrypt/conf/httpd-prefix.conf"
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/

这似乎可行,但是老实说,我不知道我在做什么。该配置是否正确?任何建议/指导将不胜感激。

这里是 Bitnami 工程师。要从头开始创建自定义 Node.js 应用程序,请按照以下步骤操作。这些步骤假定您的应用程序将位于 /opt/bitnami/apps/myapp/* 目录中:

  • 运行 创建目录的命令如下:

      $ sudo mkdir -p /opt/bitnami/apps/myapp
      $ sudo mkdir /opt/bitnami/apps/myapp/conf
      $ sudo mkdir /opt/bitnami/apps/myapp/htdocs
    
  • 使用 Express 创建一个新的 Node.js 项目:

      $ cd /opt/bitnami/apps/myapp/htdocs
      $ sudo express --view pug
      $ sudo npm install
    
  • 启动 Express 服务器:

      $ cd /opt/bitnami/apps/myapp/htdocs
      $ DEBUG=sample:* ./bin/www
    

    或者,使用以下命令启动服务器并保持它 运行 即使在服务器会话结束后也是如此。将 FILE 替换为您的应用程序的正确文件名。

      $ forever start FILE.js
    

    NOTE: Although your application is now available, you may not be able to access it immediately. This is because the Express server runs on port 3000 by default, and Bitnami stacks on some platforms have this port closed for security reasons. To access the application, you will need to create an SSH tunnel to the port.

  • 创建并编辑 /opt/bitnami/apps/myapp/conf/httpd-prefix.conf 文件并添加以下行:

      Include "/opt/bitnami/apps/myapp/conf/httpd-app.conf"
    
  • 创建并编辑 /opt/bitnami/apps/myapp/conf/httpd-app.conf 文件并添加以下内容。这是您的应用程序的主要配置文件,因此请根据您的应用程序的要求进一步修改它。

      ProxyPass / http://127.0.0.1:3000/
      ProxyPassReverse / http://127.0.0.1:3000/
    

    NOTE: 3000 is the default port for the Express server. If you have customized your application to use a different port, change it here as well.

  • 创建上述文件和目录后,将以下行添加到主 Apache 配置文件的末尾 /opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf,如下图:

      Include "/opt/bitnami/apps/myapp/conf/httpd-prefix.conf"
    
  • 重新启动 Apache 服务器:

      $ sudo /opt/bitnami/ctlscript.sh restart apache
    

您可以在此处找到更多信息:https://docs.bitnami.com/installer/infrastructure/nodejs/administration/create-custom-application-nodejs/