Rails Elastic Beanstalk nginx 301重定向

Zal*_*len 1 ruby-on-rails nginx amazon-web-services amazon-elastic-beanstalk

我已经能够使用本指南成功部署和运行空的rails应用程序:AWS Rails Elastic Beanstalk.

Region: us-west-2
Platform: 64bit Amazon Linux 2016.03 v2.1.0 running Ruby 2.3 (Puma)
Tier: WebServer-Standard
Run Code Online (Sandbox Code Playgroud)

当我尝试部署并运行我的实际生产应用程序时,在添加secret_key_base,设置postgres RDS以及将postgis添加到我的数据库后,部署成功.但是当我导航到URL时,服务器挂起并且请求超时.没有输出应用程序级日志,唯一的puma日志是Web工作人员启动并准备就绪.

我检查了nginx访问日志,发现所有尝试的请求都具有301解释服务器挂起和超时的状态.

172.31.36.144 - - [30/Apr/2016:04:54:47 +0000] "GET / HTTP/1.1" 301 5 "-" "-" "66.240.219.146"
172.31.36.144 - - [30/Apr/2016:04:55:02 +0000] "GET / HTTP/1.1" 301 5 "-" "-" "66.240.219.146"
172.31.36.144 - - [30/Apr/2016:04:55:21 +0000] "GET / HTTP/1.1" 301 5 "-" "-" "66.240.219.146"
Run Code Online (Sandbox Code Playgroud)

所以我认为有一个nginx配置错误,不允许nginx找到我的应用程序的正确位置,但不知道在哪里看/如何纠正它.这是我唯一的配置ebextensions文件:

option_settings:
  - option_name: BUNDLE_DISABLE_SHARED_GEMS
    value: "1"
  - option_name: BUNDLE_PATH
    value: "vendor/bundle"
packages:
  yum:
    git: []
Run Code Online (Sandbox Code Playgroud)

对于我推送的示例应用程序以及我的生产应用程序,这是相同的.非常困惑为什么nginx配置在两个应用程序之间会有所不同,但感谢任何帮助.如果您需要更多日志或文件,请告诉我.

Zal*_*len 7

解决了.问题是我仍然config.force_ssl = true在生产中获得了生产线.rb在Heroku上启用了ssl.我不得不重建环境以使此更改生效.