如何在 bitnami MEAN 堆栈服务器上托管两个节点应用程序?
Posted
技术标签:
【中文标题】如何在 bitnami MEAN 堆栈服务器上托管两个节点应用程序?【英文标题】:How to host two node applications on bitnami MEAN stack server? 【发布时间】:2016-07-22 01:15:43 【问题描述】:通过参考link,我在 Bitnami Mean 堆栈服务器上托管了两个节点应用程序
问题
1) 根据这个文档,我的应用程序应该在http://[your-IP-address]/myapp url 上运行,但它直接在http://[your-IP-address] 打开。
2) 我托管了两个在 4000 和 5000 端口上运行的节点应用程序。当您点击 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/
【问题讨论】:
【参考方案1】:您必须在每个应用程序的 httpd-app.conf 中映射 ProxyPass
和 ProxyPassReverse
的不同路径。
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/
【讨论】:
以上是关于如何在 bitnami MEAN 堆栈服务器上托管两个节点应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
React/webpack - 如何在一台服务器上托管 React 应用程序,在另一台服务器上托管图像/字体?