我正在努力让我的 rails 3.2 应用程序在 nginx - Passenger - ruby 1.9.3 设置上运行。
这是我已经做的:
installed passenger gem
installed rvmsudo passenger-install-nginx-module
我将其添加到我的 nginx conf 中的 /opt/nginx/conf/nginx.conf
server {
listen 80;
passenger_enabled on;
passenger_spawn_method smart;
rails_env staging;
root /var/rails/current/public;
}
我通过 Capistrano 进行了部署,一切似乎都部署正确。第一次尝试时遇到了一些问题(找不到 database.yml),并且出现了乘客异常页面,所以我猜乘客正在运行。
如果模型出现错误,也会显示乘客异常页面,因此乘客似乎可以访问所有代码。
修复此问题后,Rails 应用程序似乎无法启动。staging.log 保持空白,HTTP 504
几分钟后调用我的域时出现错误。
rails 公共目录中的静态错误页面,例如 http://mydomain.com/500.html 服务毫无问题。
造成这种现象的原因是什么? 有没有我可以检查的乘客/nginx 日志文件?
更新:我在 EC2 Ubuntu 实例上运行所有这些 - 也许这很重要。
谢谢!
注意:这是直接重复的stackoverflow.com 上的这个问题。我是 serverfault 的新手,但我想这里是回答这个问题的更好的地方 - 所以请随意在 stackoverflow.com 上投票删除。
答案1
做了和我在 Ubuntu 12.04 上做同样的事情Ubuntu 11.10 运行无问题。也许有人发现了同样的问题并且知道如何在 Ubuntu 12.04 下解决它!