jui*_*icy 66 ruby-on-rails passenger nginx
我尝试通过capistrano在nginx和ubuntu上部署我的rails应用程序,如https://gorails.com/deploy/ubuntu/14.04页面上的教程.但最后我收到一条错误信息:
Incomplete response received from application
Run Code Online (Sandbox Code Playgroud)
在我的浏览器中.这可能是乘客的错误,但我怎么能弄明白该怎么办?
Yan*_*man 125
您的rails_env生产没有必需的设置,可能缺少secret_key_base.
打开/etc/nginx/sites-available/default并将rails_env更改为开发:
rails_env production;
to
rails_env development;
Run Code Online (Sandbox Code Playgroud)
如果应用程序正在加载它不是乘客问题.
生产方案:
rake secret/yourapp/config/secrets.ymlsecret_key_base重启乘客应用:
touch /yourapp/tmp/restart.txt
Run Code Online (Sandbox Code Playgroud)
Hoa*_*ang 25
发生此错误是因为您未设置secret_key_base.请按照以下步骤进行修复:
转到rails app目录
cd /path/rails-app
Run Code Online (Sandbox Code Playgroud)
生成密钥密钥库
rake secret RAILS_ENV=production
Run Code Online (Sandbox Code Playgroud)
设置环境变量
SECRET_KEY_BASE=<the-secret-key-base>
Run Code Online (Sandbox Code Playgroud)
重新启动Rails应用程序
touch /path/rails-app/tmp/restart.txt
Run Code Online (Sandbox Code Playgroud)
对于使用乘客的人:
•导航到项目的根目录。
• 跑 bundle exec rake secret RAILS_ENV=production
•复制输出,然后运行 sudo nano config/secrets.yml
•在下production,将的值替换为secret_key_base最近复制的rake机密。
•按CNTRL+X,然后按y,然后按enter。
•运行passenger-config restart-app并选择要重新启动的应用程序。
https://www.phusionpassenger.com/library/admin/apache/restart_app.html
周末我遇到了这个问题(事实证明,我的乘客和红宝石版本之间不兼容)。
但是,似乎没有人提及:实际错误可能出现在/var/log/apache2/errors.log中,而不是任何自定义日志中。
一旦知道了,希望您的搜索会更容易!
更新,因为我需要再次参考此内容-nginx也是如此- /var/log/nginx/error.log在这种情况下是您的朋友!
| 归档时间: |
|
| 查看次数: |
53337 次 |
| 最近记录: |