【发布时间】:2018-09-17 18:07:09
【问题描述】:
首先,干杯!这是我在 Stack Overflow 上的第一篇文章,我会尽量不做任何愚蠢的事情 :)。在过去的 3 天里,我一直在努力解决这个问题并在谷歌上搜索,但从未真正找到解决方案,无论它可能多么基本。
我设置了一个新的 EC2 实例(运行 Ubuntu 16.04)并使用一个简单的脚手架创建了一个新的 Rails (v 5.1.6) 应用程序:
rails new test_app
cd test_app
此时,Rails 抱怨我必须安装“listen”gem,我安装了(v 3.1.5)。然后我进行如下操作:
rails g scaffold article title:string
rails db:create
rails db:migrate
到目前为止一切顺利。然后我继续配置 AWS 的安全组并正确允许 TCP 连接通过端口 3000。我目前使用 Puma (v 3.7) 作为服务器。
这就是困扰我的地方:然后我跑了
rails server
并尝试通过端口 3000 上的 Chrome 连接到我的 EC2。结果我能够访问通常的“You're on Rails”页面,没问题,但是当我尝试访问任何其他页面,比如 /articles 或 /articles/new,我在控制台中收到了来自服务器的肯定响应:
Started GET "/articles"
Processing by ArticlesController#index as HTML
Rendering articles/index.html.erb within layouts/application
Article Load (0.7ms) SELECT "articles".* FROM "articles"
Rendered articles/index.html.erb within layouts/application (47.3ms)
Completed 200 OK in 3912ms (Views: 3807.5ms | ActiveRecord: 1.5ms)
但是浏览器一直在等待响应。我也尝试通过 curl 访问 URL,但也没有得到响应。如果有人能告诉我我在这里犯了多么愚蠢的错误,我将不胜感激。
谢谢,
马尔西奥
【问题讨论】:
标签: ruby-on-rails amazon-ec2 server puma