【问题标题】:502 Bad Gateway when switching rails app to production将 Rails 应用程序切换到生产环境时出现 502 Bad Gateway
【发布时间】:2015-03-16 13:42:16
【问题描述】:

尝试使用带有 nginx 的 phusion 乘客在我的服务器上以生产模式部署我的 rails 应用程序时遇到问题。

使用这个配置文件,我的应用在开发模式下运行良好:

server {
 listen 80;
 server_name domain.co;
 root /home/me/projects/myapp/public;
 passenger_enabled on;
 rack_env development;
}

我所做的只是将 development 切换为 production

执行此操作时,我只会收到“502 Bad Gateway”消息。 一个 production.log 文件被创建,但它是 0 字节。

我找不到任何其他表明是否存在问题的日志(日志文件夹中没有其他内容,/etc/var/nginx/ 中没有其他内容...)。

当我尝试在我的项目结构中运行 passenger-status 时,乘客告诉我它没有在此处运行。当我在开发模式下执行相同操作时,我会收到正确的状态消息。

我的猜测是乘客尝试启动应用程序,但在此过程的早期出现故障;问题是我不知道为什么,因为我找不到任何日志。

我在 Stack Overflow 上发现了其他几个关于同一问题的问题,但其中大多数都得到了某种日志。我想如果我能以某种方式访问​​错误消息会有所帮助。

有什么明显的我想念的吗? 谢谢, 朱利安

【问题讨论】:

  • 试试这个:server { listen 80;根 /home/me/projects/myapp/public;乘客启用;乘客应用程序环境生产; }

标签: ruby-on-rails ruby-on-rails-4 nginx passenger


【解决方案1】:

和往常一样,Stack Overflow 非常适合橡皮鸭调试,现在我觉得自己非常愚蠢。

问题似乎来自我将 SECRET_KEY_BASE 环境变量放在 .bashrc 文件中的事实;这在我的生产环境中不起作用。 如果我将导出语句放在 **~/.rvm/environment/ruby***** 中,一切正常。 . .

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-27
    • 2020-04-22
    • 2020-02-06
    • 2016-02-27
    • 1970-01-01
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    相关资源
    最近更新 更多