【问题标题】:Alternate of nginx server替代 nginx 服务器
【发布时间】:2019-12-12 08:54:00
【问题描述】:

目前我正在使用 aws ec2 实例来托管我的后端和前端。后端位于 nodeJs 中,前端位于 Angular 中。还使用路由 53 进行路由。并从 goDaddy 购买了域名。

我已使用以下步骤进行托管。

后端:

  1. 在 ec2 实例上克隆我的后端文件。
  2. 使用pm2运行后端nodejs程序(用于后台运行nodejs)
  3. 使用 nginx 作为反向代理,将 localhost 指向我的子域。

对于前端:

  1. 在 ec2 实例上克隆了前端生产文件。

  2. 使用 nginx 将前端文件指向我的主域。

现在 nginx 对我来说有点复杂。有什么办法可以避免使用 nginx 或通过其他方式托管?

感谢您的宝贵时间。

【问题讨论】:

  • 您可以在 s3 上托管您的(静态)前端文件并使用 cloudfront 来交付它们
  • @danimal 我的前端不是静态的。它的动态。
  • 你还是可以的,我会写一个答案

标签: node.js angular amazon-web-services nginx web-hosting


【解决方案1】:

如果您的前端应用程序使用 Angular,那么它可能是一个“单页应用程序”,它只是动态的,因为它对您的 nodeJS 应用程序提供的(RESTful?)API 进行某种 HTTP 调用。

如果是这种情况,那么您可以将 Angular 应用程序的构建版本托管在配置为“静态”站点的公共 S3 存储桶中,该存储桶仍然能够通过 Angular 的 HttpClient 与您的后端通信。您可以使用 Route53 将您购买的域指向存储桶的 index.html 文件,如果需要,还可以设置 CloudFront 分配。

您的 nodeJS 应用程序将继续在 EC2 实例上运行,尽管您可以考虑使用 Elastic Beanstalk 为您部署后端应用程序,或者至少为您自己设置一个负载均衡器和自动缩放组以提供容错和后端的可用性。

【讨论】:

    猜你喜欢
    • 2015-09-10
    • 1970-01-01
    • 2020-09-22
    • 2017-07-17
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    • 2021-07-01
    • 2018-05-11
    相关资源
    最近更新 更多