Jeśli zażądamy fałszywego pliku obrazu, Rails generuje wewnętrzny błąd 500 serwera zamiast 404. Zobacz dziennik poniżej.Wewnętrzny błąd serwera 500 na brakującym pliku obrazu (Rails 3.2.12)
Oto wiersz routes.rb że łapie błędy 404:
# Catches all 404 errors and redirects
match '*url' => 'default#error_404'
innych nieznanych adresy są obsługiwane prawidłowo błędy 404. Czym różnią się pliki graficzne i adresy URL z rozszerzeniami plików?
Started GET "/images/doesnotexistyo.png" for 71.198.44.101 at 2013-03-08 07:59:24 +0300
Processing by DefaultController#error_404 as PNG
Parameters: {"url"=>"images/doesnotexistyo"}
Completed 500 Internal Server Error in 1ms
ActionView::MissingTemplate (Missing template default/error_404, application/error_404 with {:locale=>[:en], :formats=>[:png], :handlers=>[:erb, :builder]}. Searched in:
* "/home/prod/Prod/app/views"
dzięki! jeśli nie jest to format HTML, czy możemy zmusić go do renderowania widoku HTML i wyświetlania prawidłowej strony 404? – Crashalot
Zmieniono moją odpowiedź, mam nadzieję, że pomoże: D – sergelerator
Jak możemy ustawić catch-all? Innymi słowy, jeśli chcemy uchwycić dowolne rozszerzenie pliku (np. .jpg, .gif) bez określania każdego z nich osobno, w jaki sposób podejdziemy do niego? – Crashalot