Rails 应用正在迁移到 AWS Elastic Beanstalk :: 网关错误 (502)

Rails app migrating to AWS Elastic Beanstalk :: Bad Gateway (502)

所以我要从 Heroku 迁移到 AWS Elastic Beanstalk 并试水。我正在关注此文档:

AWS Docs :: Deploy Rails app to AWS

但是在按照文档进行操作后,我不断收到 Bad Gateway 502(错误)。

这是我的应用程序的规格:

所以我检查了我的 /log/nginx/error.log,这是我看到的:

2015/11/24 06:44:12 [crit] 2689#0: *4719 connect() to unix:///var/run/puma/my_app.sock failed (2: No such file or directory) while connecting to upstream, client: 172.31.13.129, server: _, request: "G ET / HTTP/1.1", upstream: "http://unix:///var/run/puma/my_app.sock:/", host: "my-app-env-mympay5afd.elasticbeanstalk.com"

由此AWS Forum thread看来 Puma 似乎没有正确启动。

所以我查看的三个日志文件是:

和 none 似乎表明除了我修复的 "secret_key_base" 错误之外的任何错误(我使用了 eb setenv SECRET_KEY_BASE=[some_special_key] 命令)。

可以暗示问题根源的一件事是 /var/log/nginx/rotated/error.log1448330461.gz 具有以下内容

2015/11/24 01:06:55 [warn] 2680#0: duplicate MIME type "text/html" in /etc/nginx/nginx.conf:39 2015/11/24 01:06:55 [warn] 2680#0: conflicting server name "localhost" on 0.0.0.0:80, ignored

但它们似乎是警告,而不是严重的阻碍。

还有其他我应该查看的文件吗?

作为另一个参考点,我查看了这个 ,这似乎暗示我需要启用 SSL 才能使所有这些工作正常进行。

提前致谢!

知道了。

在我的 'production.rb' 中,我有一个 force_ssl 设置,但我还没有设置 SSL,因为我刚刚开始。