2016-11-30 4 views
1

J'ai une application ruby-on-rails s'exécutant localement sur un serveur WEBrick. J'utilise Postman pour déclencher des méthodes HTTP (POST, GET, etc) afin de vérifier si une page d'erreur est montrée aux utilisateurs. La figure ci-dessous montre l'une des pages d'erreur trouvées lors de l'exécution d'un POST à ​​la page d'accueil:Rails/Renvoi de la page d'erreur WEBrick

WEBrick Error page

Comme on peut le constater, le chemin physique vers le répertoire d'application est divulguée:/home/dennis/dunbarwebsite

Fuite de ce type d'informations peut aider à affiner les attaques contre l'application. Par conséquent, je voudrais savoir s'il est possible de transmettre cette page d'erreur à une page personnalisée, comme la redirection personnalisée aux erreurs 404 et 500.

Merci d'avance, Dennis.

Répondre

0
  1. Cette page d'erreur apparaît uniquement en mode développement.
  2. Ajouter un catchall route à la fin de routes.rb: "chemin *", à match:: redirect ('/'), par l'intermédiaire

match "*path", to: redirect('/'), via: :all

+0

En fait, j'avais déjà un itinéraire catchall similaire:: all J'ai changé pour le vôtre mais cela n'a pas fonctionné. J'ai trouvé quelque chose en rapport avec votre premier point: J'ai mis config.consider_all_requests_local à false dans config/development.rb. Cette variable est définie sur true dans la production. Merci! –