繁体   English   中英

部署MEANJS应用制作

[英]Deploy MEANJS app production

下周我要进行演示,我需要将正在使用的应用程序(使用MEANjs堆栈开发)部署到nginx之类的服务器上。
我在“红帽”盒子后面,所以我的问题是将应用程序部署到生产环境中的最佳做法是什么?

  • 部署到nginx是否可行? (redhat box已经安装了Apache,我需要与nginx互换吗?)
  • 是否有关于此过程做什么和不做什么的注释?

我已经找到了如何将MEAN.js(Node.js)应用程序部署到生产环境的方法

并且我试图发表评论,但没有必要的要点:D,所以无论如何,还是不太了解nginx部分(放在前面),这意味着您实际上没有将应用程序部署到nginx中吗?

我也看过其他问题,例如:

因此,从最佳实践的角度来看,我们真的需要ningx,apache或类似工具吗?或者将内容同步到生产服务器文件夹并使用Upstart启动应用的方法是?

谁使用过MEANjs,如何使用Passenger

编辑:

好吧,所以我的我的meanjs服务器在端口8002上运行,下面是我对ningx的配置,据我所知,它的工作正常,现在如何保护此设置呢?

EDIT2:好吧,我在这里学习,所以这就是我发现的https://groups.google.com/forum/#!topic/meanjs/_Kb07-tvlzU
显然,为了在运行“ grunt build”命令后进行部署,可以像这样运行它:

node server.js

显然它将从production.js获取所有配置
不能完全确定它是否可以投入生产。
现在,我认为出于组织上的考虑,我应该将其移至/ var / www / theAppFolder /之类的地方。

这是nginx的配置

upstream proj{
  server 127.0.0.1:8002;
}

server{
  listen 0.0.0.0:80;
    server_name dep01.local  poc;
    access_log /var/log/nginx/dep01.log;

    location / {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Host $http_host;
      proxy_set_header X-NginX-Proxy true;

      proxy_pass http://proj/;
      proxy_redirect off;
    }
}

在nginx后面部署节点应用程序绝对是可行的。

您的红色帽子盒可以容纳分娩服务器。

您需要将node和nginx都安装到服务器。

然后部署节点应用程序,以便它监听某个较高的端口,例如8000。您还可以设置应用程序以信任它的代理(nginx会这样做)。 出于安全原因,您只能减慢从本地主机到节点端口的连接。

现在继续配置nginx。例如,您可以在配置中设置“上游”以指向localhost:8000。 然后在nginx conf中为您的应用程序和域停止虚拟主机,并向先前定义的上游请求代理。

您可以在nginx上粉碎设置任何SSL证书,这样一来,它的性能将更高(与使用SSL的nginx相比,节点往往要慢得多)。

或者,您可以直接将节点直接绑定到端口80(对​​于SSL则为443),并跳过使用nginx,但这取决于服务器,应用程序,受众和环境以及您的个人喜好和体验。

有关任何步骤的详细信息,请尝试提供更多详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM