我已经使用Ember-CLI建立了一个网站,现在它已经可以投入生产了,所以我们正在寻找一种方法让它永久运行。
现在我们正在使用$ ember serve --port 80
但显然这仅在我们登录时才有效。我之前使用Forever来保持节点应用运行,但我不确定如何使用Ember CLI,因为'ember serve'命令显然做得更多而不只是运行app.js?
任何意见都会受到赞赏!
答案 0 :(得分:7)
Ember-CLI应用程序不是节点应用程序,它们是浏览器应用程序,因此您不需要任何特殊的服务。为了使Ember-CLI应用永久运行,我建议:
ember build --environment=production
这将执行必要的构建步骤,以便代码在浏览器中工作(例如,转换ES6模块)并将代码放在构建文件夹中。它还将缩小JS文件并指纹所有资源(这仅在环境生产时才会发生)。
然后,您需要将文件放在Web服务器上的dist/
文件夹中。
我建议使用Apache或Nginx,但任何工作都可以。
修改强>
正如Omair Vaiyani所指出的,这可能不适用于某些服务器,因为Ember-CLI 使用locationType:' auto'默认为' history'。为此,您必须将SERVER配置为从所有路由提供ember应用程序。
我所做的事情,以及因为我无法控制服务器而为我提供服务,只需将locationType更改为' hash',这将生成带有哈希值的网址{{1并且将适用于任何服务器。只需相应地编辑environment.js文件:
http://myemberapp/#/myroute/myid
```