Pregunta

I use Capistrano to my rails project into nginx server. My project run perfectly in my development machine but in production server the browser says "error 500". I tried $nano log/production.log to see the error, and i got it, but i removed this file, and now, the server say the same error but i don't see in production.log, now it doesn't show anything wrong.

my deploy.rb

require "bundler/capistrano"
require 'new_relic/recipes'

load "config/recipes/base"
load "config/recipes/nginx"
load "config/recipes/nodejs"
load "config/recipes/unicorn"
load "config/recipes/postgresql"
load "config/recipes/rbenv"
load "config/recipes/monit"
load "config/recipes/check"
load "config/recipes/newrelic"

server "rails.supera.com.br", :web, :app, :db, primary: true
# server "vagrant.dev",         :web, :app, :db                 # Maquina virtual
# server '54.232.212.216',      :web, :app, :db, primary: true  # Amazon server

set :user, "deployer"
set :application, "webapp"
set :deploy_to, "/home/#{user}/rails_apps/#{application}"
set :deploy_via, :remote_cache
set :use_sudo, false

set :scm, "git"
set :repository, "git@bitbucket.org:nicoskaralis/wt_#{application}.git"
set :branch, "dev"

default_run_options[:pty] = true
ssh_options[:forward_agent] = true

after "deploy", "deploy:cleanup" # keep only the last 5 releases

# Opções avançadas rbenv
set :default_environment, {
  'PATH' => "$HOME/.rbenv/shims:$HOME/.rbenv/bin:$PATH"
}
set :bundle_flags, "--deployment --quiet --binstubs --shebang ruby-local-exec"

# Debug rake
# set :rake, "#{rake} --trace"

# Criar usuario novo
# sudo adduser deployer --ingroup admin
# cat ~/.ssh/id_rsa.pub | ssh deployer@rails.supera.com.br 'mkdir -p ~/.ssh/ && cat >> ~/.ssh/authorized_keys'
# echo "deployer ALL=(ALL:ALL) ALL" >> /etc/sudoers

# Deploy inicial em uma maquina zero
# cap deploy:install
# cap deploy:setup
# cap deploy:cold

# Deploy de uma nova versão na maquina ja instalada
# cap deploy
¿Fue útil?

Solución

If you have a error 500 it's probably the web server (nginx or apache) that is serving it because the app server (like passenger) is crashing before being able to display pages or create logs. Check the logs from your web server (/var/log/apache2/ for apache).

This may be wrong but each time i saw an error 500 on a rails app it was because of an encoding (UTF-8/ASCII) problem.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top