【问题标题】:deploy Angular Cli app on ubuntu server在 ubuntu 服务器上部署 Angular Cli 应用程序
【发布时间】:2018-10-25 09:22:28
【问题描述】:

我的 Angular cli 应用程序在本地与 mongodb 配合良好。在本地,我运行两个服务,

 node server.js

在 3000 端口上,并且

 ng serve --proxy-config proxy.json

在端口 4200 上。

现在我尝试将它部署在 apache tomcat 远程服务器上。我已将“/dist”(运行“ng build --prod”后)文件夹中的内容复制到“apache-tomcat-8.0.47/webapps/”下的服务器,还有什么?

打开浏览器,没有从“:8080/api/models:1”正确获取数据

Failed to load resource: the server responded with a status of 404 (Not Found)"
我猜

"/api/models:1" 应该来自运行 "node server.js" 。在哪里/如何“scp”“server.js”到服务器??

感谢您的帮助。

这和“Deploy Angular 2 App with Webpack to Tomcat - 404 Errors”不是同一个问题,我的有服务器端。

【问题讨论】:

  • 所以你把它部署到apache tomcat远程服务器上,有什么问题...?
  • @JavascriptHuppTechnologies 他说这些命令是在本地运行的。
  • 好的删除评论
  • @penleychan 抱歉,我添加了更多信息。
  • 您是否尝试在生产环境中使用 ng serve 为您的 Angular 应用提供服务?

标签: angular deployment server


【解决方案1】:

您需要配置 Apache 以将每个请求重定向到 index.html :在“常规网站”上,每个 URL 加载一个页面。

对于单页应用程序,所有内容都包含在索引文件中。

由于问题在于 API 链接,因此您还需要运行节点服务器。您正确地启动了命令,这很好,但现在您必须更改它。

在另一个端口(比如 8081)上服务您的节点服务器,更改您的 environment.ts 文件中的 URL 以访问该端口,然后运行 ​​node server.js

【讨论】:

  • 这是多页应用。我会试试看它是否有效。
  • 只复制“server.js”到服务器?在哪里?
  • 哪里可以! Heroku 可以为您完成,或者您可以购买 Linux 服务器在其上部署您的节点服务器。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-04
  • 2011-03-04
  • 2022-01-13
  • 1970-01-01
  • 2018-06-05
  • 1970-01-01
相关资源
最近更新 更多