【问题标题】:Deploying rails app, cant hit endpoints部署 Rails 应用程序,无法命中端点
【发布时间】:2018-06-11 04:10:38
【问题描述】:

我正在为 AWS EC2 实例部署一个带有 React 前端的 Rails api。 这是我第一次做这样的事情。

我运行 rails s -e production,它在我的 EC2 实例上的 3000 端口上运行 这使我的端点 ec2URL:3000/api/users/ 而不是 ec2URL/api/users/

我是否必须更改我的 react fetch 调用以匹配此应用程序,或者有没有办法在没有 :3000 的情况下为我的路线提供服务

非常感谢任何帮助,谢谢!

【问题讨论】:

  • React 前端部分是同一个 Rails 应用吗?

标签: ruby-on-rails amazon-web-services amazon-ec2 deployment


【解决方案1】:

对于生产,您需要使用端口 80(HTTP) 或端口 443(HTTPS)。

建议你通过这个tutorial

您需要一个像 Phusion-passenger 这样的应用服务器并使用 Apache/Nginx 对其进行配置。

【讨论】:

  • 我的网络服务器 sudo service httpd start 在端口 80 上运行,如何同时运行?
  • @Matt 更新了答案。为了更好地理解,请参阅任何在线教程。
【解决方案2】:

您还可以使用来自 AWS 的应用程序负载均衡器:https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html 您可以使用侦听器和目标组将 http 端口 80 映射到 3000 到实例。 如果您想扩展或将 https 添加到您的 API,这也将在以后获得更大的灵活性。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多