2014-07-17 48 views
5

http://localhost:3000/%ED'a gitmek ActionController::BadRequest'u atar.Taşıma Rayları ActionController :: BadRequest

Ama bir 404 sayfası döndürürsek gerçekten istediğim şey (çoğu web sitesi gibi).

Örneğin, Twitter diyecekler: Bir veya daha fazla parametre /% olarak

Geçersiz Unicode değeri ED

Ve bana almak geliştirme (ve üretimde 500 hata sayfası) :

going to localhost:3000/%ED

ben bariz rescue_from çalıştı ama hata bile ben değil benim uygulama yönlendirme yığınında yükseltilmiş olarak.

Herhangi bir fikrin var mı? Bir ara katman yazılımı düşündüm ama nasıl yapacağımı bilmiyor mu?

+0

Ne isterseniz, route.rb adresindeki bir 404 sayfasına yönlendirebilmek. Bu yardımcı olabilir: http://stackoverflow.com/questions/19653761/how-redirect-to-404-page-in-routes-rb –

+0

Teşekkürler, bu yüzden 'config.exceptions_app = self.routes' kullanmak gerekir? Ama o zaman 404 ya da 500'üm olduğunu nereden bilebilirim? Ve hala istisna bildirecek mi? Ayrıca, bu benim uygulamada bir hata varsa, benim uygulamayı kullanmak için çalışıyormuş gibi, daha da fazla hata oluşturabilir kötü bir fikir olabilir? – Dorian

+0

Burada benzer bir soruya bir cevap ekledim: http://stackoverflow.com/a/26227688/516820 temelde hatayı yakalayan ve bir '400' hata sayfası döndüren bir ara katman var. – complistic

cevap