8
votes

Flacon donnant une erreur de serveur interne au lieu de rendu 404

Dans mon application de flacon, j'ai configuré un gestionnaire 404 comme ceci: xxx

Toutefois, lorsqu'un utilisateur passe à une URL non reconnue, le système donne une erreur de serveur interne au lieu de rendant mon 404 Modèle. Est-ce que je manque quelque chose?


2 commentaires

Avez-vous créé le modèle 404.html ? De toute façon, postez la trace de la pile pour votre erreur. Activez le mode de débogage ou la journalisation de votre application, ou simplement vérifier la console si vous utilisez le serveur de développement intégré.


Ma page d'erreur n'a pas fonctionné avant d'avoir renvoyé une chaîne comme 'Erreur 404'. Ensuite, je code 'rendu_template' et a fonctionné bien. Je ne connais pas la raison pour le faire fonctionner mais vous pouvez l'essayer.


3 Réponses :


8
votes

Erreur de serveur interne fort> est une erreur HTTP 500 plutôt que 404 et vous n'avez pas ajouté le gestionnaire d'erreur pour cela. Cela se produit lorsque le serveur est incapable de répondre correctement à la demande du client. Pour ajouter un message gracieux lorsque une telle erreur est survenue, vous pouvez ajouter un errorhandler em> comme 404.

@app.errorhandler(500)
def exception_handler(e):
    return render_template('500.html'), 500


0 commentaires

0
votes

Cela se produira également si vous avez du débogage défini sur true. Essayez de définir le débogage sur FALSE et voyez si votre personnalisation 404 apparaît alors.


0 commentaires

1
votes

Il y a probablement un problème tout en rendant le modèle 404 qui déclenche ensuite une erreur de serveur interne.

Je suggère de vérifier les journaux de votre application.


0 commentaires