Error 404, 500 não funcionando

79 views
Skip to first unread message

John W. M. Carneiro

unread,
Sep 26, 2014, 1:16:41 PM9/26/14
to rail...@googlegroups.com
Boa tarde a minha aplicação está como erro na hora de gerar o erro (rs) 404, 500...

Ao invés de me apresentar a página 404, está exibindo o seguinte erro 

500 Internal Server Error
If you are the administrator of this website, then please read this web application's log file and/or the web server's log file to find out what went wrong.

O log da ação

I, [2014-09-26T13:08:28.322003 #30767]  INFO -- : Started GET "/teste" for 189.114.49.123 at 2014-09-26 13:08:28 -0400
F, [2014-09-26T13:08:28.402670 #30767] FATAL -- : 
ActionController::RoutingError (No route matches [GET] "/teste"):
  actionpack (4.0.3) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
  actionpack (4.0.3) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
  railties (4.0.3) lib/rails/rack/logger.rb:38:in `call_app'
  railties (4.0.3) lib/rails/rack/logger.rb:20:in `block in call'
  activesupport (4.0.3) lib/active_support/tagged_logging.rb:67:in `block in tagged'
  activesupport (4.0.3) lib/active_support/tagged_logging.rb:25:in `tagged'
  activesupport (4.0.3) lib/active_support/tagged_logging.rb:67:in `tagged'
  railties (4.0.3) lib/rails/rack/logger.rb:20:in `call'
  actionpack (4.0.3) lib/action_dispatch/middleware/request_id.rb:21:in `call'
  rack (1.5.2) lib/rack/methodoverride.rb:21:in `call'
  rack (1.5.2) lib/rack/runtime.rb:17:in `call'
  activesupport (4.0.3) lib/active_support/cache/strategy/local_cache.rb:83:in `call'
  rack (1.5.2) lib/rack/sendfile.rb:112:in `call'
  railties (4.0.3) lib/rails/engine.rb:511:in `call'
  railties (4.0.3) lib/rails/application.rb:97:in `call'
  passenger (4.0.41) lib/phusion_passenger/rack/thread_handler_extension.rb:74:in `process_request'
  passenger (4.0.41) lib/phusion_passenger/request_handler/thread_handler.rb:141:in `accept_and_process_next_request'
  passenger (4.0.41) lib/phusion_passenger/request_handler/thread_handler.rb:109:in `main_loop'
  passenger (4.0.41) lib/phusion_passenger/request_handler.rb:448:in `block (3 levels) in start_threads'


I, [2014-09-26T13:08:28.412476 #30767]  INFO -- : Processing by ErrorsController#not_found as HTML
I, [2014-09-26T13:08:28.462305 #30767]  INFO -- : Completed 500 Internal Server Error in 50ms

Achei esse tópico falando, mas não entendi muito bem

Eu vi que ele redireciona para Errors#not_found, mas em seguida ele gera um erro 500.

Abaixo o controller Errors, routes.rb e application.rb

errors_controller.rb
class ErrorsController < ApplicationController
  def not_found
  render :not_found, status: 404
  end

  def server_error
  render :server_error, status: 500
  end
end


routes.rb

  get '/404' => 'errors#not_found'
  get '/422' => 'errors#server_error'
  get '/500' => 'errors#server_error'

application.rb

    # Exceptions 404, 422, 500...
    config.exceptions_app = self.routes



Tentei dar um olhada no RailsCasts, mas parece que offline.

Alguém tem ideia do que pode ser?

Obrigado.



Douglas Rossignolli

unread,
Sep 26, 2014, 2:59:58 PM9/26/14
to rail...@googlegroups.com
Jovem, tenta usar os symbols aqui para passar os erros:

http://futureshock-ed.com/2011/03/04/http-status-code-symbols-for-rails/

begin
  # do awesome thing
rescue => exception
  render status: not_found, json: {error: "Usuário não encontrado"}
end

--
--
Você recebeu essa mensagem porquê está inscrito no Google
Groups "rails-br".
Para enviar uma mensagem para o grupo, mande um email para rail...@googlegroups.com
Para se descadastrar, mande um e-mail para
rails-br+u...@googlegroups.com
Visite o grupo em http://groups.google.com/group/rails-br?hl=pt-BR
Leia nossa política de uso: http://goo.gl/YGgt7

---
Você recebeu essa mensagem porque está inscrito no grupo "rails-br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para rails-br+u...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Atenciosamente,
Douglas Rossignolli

Message has been deleted

John W. M. Carneiro

unread,
Sep 26, 2014, 3:08:52 PM9/26/14
to rail...@googlegroups.com
Continua da mesma forma. :(

Douglas Rossignolli

unread,
Sep 26, 2014, 3:27:42 PM9/26/14
to rail...@googlegroups.com
Entendi, para tratar erro de routes você precisa disso aqui:

http://stackoverflow.com/questions/18359088/custom-error-handling-with-rails-4-0

John W. M. Carneiro

unread,
Sep 26, 2014, 4:05:13 PM9/26/14
to rail...@googlegroups.com
Douglas,

Já descobri do que se trata o erro, só ainda não consegui resolver, o que acontece é que esse erro é lançado quando no momento da exceção se gera uma exceção.


Ai da  essa zica, percebi que é um problema no meu applicaton_controller.rb. O meu sistema é multi-empresa então quando tem WWW/Subdominio do cliente está funcionando, mas sem o WWW da essa zica a aplicação não consegue escolher o layout.

Se eu conseguir resolver posto o código e resolução.

Valeu :)

Douglas Rossignolli

unread,
Sep 26, 2014, 4:11:51 PM9/26/14
to rail...@googlegroups.com
Saquei, verifica se não é a configuração do seu Nginx/Apache, se não me engano a configuração precisa responder para todos os caminhos: www.subdominio.dominio.com.br, subdominio.dominio.com.br

John W. M. Carneiro

unread,
Sep 26, 2014, 4:52:07 PM9/26/14
to rail...@googlegroups.com
Descobri e já corrigi :D

Seguinte no meu application_controller.rb, estava determinando o layout e não tinha percebido no meu home_controller estava sobrescrevendo essa função, retirei da home e ficou 100%.

Valeu pela atenção.
Reply all
Reply to author
Forward
0 new messages