node.js - 如何在 bitnami MEAN 堆栈服务器上托管两个 Node 应用程序?

标签 node.js apache mean-stack bitnami

引用此 link,我在 Bitnami Mean 堆栈服务器上托管了两个 Node 应用程序

问题

1) 根据此文档,我的应用程序应在 http://[your-IP-address]/myapp 上运行url 但它直接在 http://[your-IP-address] 打开.

2) 我托管了两个在 4000 和 5000 端口运行的 Node 应用程序。当您点击 ip 时,它会打开首先放置在该文件中的应用程序 “/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf”。

bitnami-apps-prefix.conf 的内容

# Bitnami applications installed in a prefix URL
Include "/opt/bitnami/apps/app1/conf/httpd-prefix.conf"
Include "/opt/bitnami/apps/app2/conf/httpd-prefix.conf"
Include "/opt/bitnami/apps/rockmongo/conf/httpd-prefix.conf"

3) 如何映射url打开特定的应用。

App1 设置 -> httpd-app.conf

ProxyPass / http://127.0.0.1:5000/ 
ProxyPassReverse / http://127.0.0.1:5000/

App2 设置 -> httpd-app.conf

ProxyPass / http://127.0.0.1:4000/ 
ProxyPassReverse / http://127.0.0.1:4000/

最佳答案

您必须在每个应用程序的 httpd-app.conf 中的 ProxyPassProxyPassReverse 映射不同的路径。

App1 设置 -> httpd-app.conf

ProxyPass /app1/ http://127.0.0.1:5000/ 
ProxyPassReverse /app1/ http://127.0.0.1:5000/
ProxyPass /app1 http://127.0.0.1:5000/ 
ProxyPassReverse /app1 http://127.0.0.1:5000/

App2 设置 -> httpd-app.conf

ProxyPass /app2/ http://127.0.0.1:4000/ 
ProxyPassReverse /app2/ http://127.0.0.1:4000/
ProxyPass /app2 http://127.0.0.1:4000/ 
ProxyPassReverse /app2 http://127.0.0.1:4000/

您应该同时添加 /app1//app1 以将应用程序根地址与 /app1 匹配,其余地址与/app1/。否则代理将无法在这两种情况下正确映射您的请求。

如果您想将您的应用程序之一映射为根目录 (/),请确保将其包含在 bitnami-apps-prefix.conf 文件的末尾:

# Bitnami applications installed in a prefix URL
Include "/opt/bitnami/apps/app1/conf/httpd-prefix.conf"
Include "/opt/bitnami/apps/app2/conf/httpd-prefix.conf"
Include "/opt/bitnami/apps/rootapp/conf/httpd-prefix.conf"

根应用程序设置 -> httpd-app.conf

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

关于node.js - 如何在 bitnami MEAN 堆栈服务器上托管两个 Node 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36369752/

相关文章:

node.js - 为什么 bodyparser.json 正在解析 multipart/formdata?

php - htaccess Symfony2 将所有 *.php 页面(除了 app.php)重定向到 app.php

angularjs - 使用 Angular 和 Express 进行客户授权

python - 阻止apache运行python脚本

javascript - MEAN 堆栈路由问题, Angular 路由不起作用

node.js - Mongoose 如何编写带if条件的查询?

javascript - Node.js Mongoose 静态函数没有被调用

node.js - API自动化框架的最佳实践设计模式

node.js - ELOOP : too many symbolic links encountered

apache - Htaccess - 如果未设置 env var 则跳过重定向