首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"502 Bad Gateway“与乘客

"502 Bad Gateway“与乘客
EN

Stack Overflow用户
提问于 2011-01-13 17:53:39
回答 3查看 7.1K关注 0票数 2

我使用的是rails(2.3.10)/passenger(2.2.15)/nginx(0.7.67),当我运行我的应用程序时,它给出了"502 Bad Gateway“,并且没有任何生产日志,我的conf文件是:

代码语言:javascript
复制
  1 server {
  2     listen  80;
  3     server_name  www.why.bz;
  4     root   /usr/local/apps/why/pro/public;
  5     access_log  /usr/local/apps/why/pro/log/access.log;
  6     passenger_enabled on;
  7 }

谁能给我一些建议,谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-02-13 07:57:56

在过去的几年里,我一直在做Rails的部署工作,所以希望我能帮上忙。你现在可能已经解决了这个问题,但这里有一些问题需要下次考虑:

  • 由于这是一个Ruby on Rails应用程序,你能说出错误来自哪里:是Nginx还是Rails本身?这听起来更像是Nginx的问题,但知道这一点会很好。快速浏览一下Rails production.log或Nginx的error_log应该可以解释这些信息。
  • 你是如何连接到应用程序的:网页浏览器还是命令行?IP和主机名设置是否正确(请尝试使用Linux的"dig“命令进行验证)?你正在尝试访问http://localhost:80吗?
  • 有一些错误日志命令,可以配置这些命令来帮助你调试这个问题(很像access_log行):nginx验证在你的web文件上设置的权限: nginx web服务器需要能够访问它们。至少需要“读取”权限。

祝你好运,哈蒙

票数 7
EN

Stack Overflow用户

发布于 2013-11-26 06:49:45

将其更改为

代码语言:javascript
复制
listen 443;

事情可能就这么简单。

票数 0
EN

Stack Overflow用户

发布于 2019-05-24 01:47:14

可能是所需阶段缺少您的密钥库。

我有时会忘记的一件事是将以下内容添加到我的secrets.yml文件中,这一点我有时会忘记,特别是如果我不是从过渡环境开始,然后在以后添加它:

代码语言:javascript
复制
staging:
  secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>

这告诉Rails从环境变量SECRET_KEY_BASE中获取secret_key_base值。您必须通过将以下内容放在nginx配置中来指定此变量:

代码语言:javascript
复制
passenger_env_var SECRET_KEY_BASE yoursupersecretkeybase;

如果您没有SECRET_KEY_BASE,可以使用以下命令生成一个:

代码语言:javascript
复制
bundle exec rake secret
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4678684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档