2010-01-21 2 views
3

Dans mon application Python à l'aide mod_wsgi et cherrypy ontop d'Apache mon code de réponse à un changement se 500 d'un 403. Je suis en train explicitement à 403.CherryPy change mon code de réponse

-à-dire cherrypy.response.status = 403

Je ne comprends pas où et pourquoi le code de réponse que le client reçoit est 500. quelqu'un at-il une expérience avec ce problème>

Répondre

1

l'erreur HTTP 500 est utilisé pour les erreurs internes du serveur. Quelque chose dans le serveur ou votre application est susceptible de lancer une exception, donc peu importe ce que vous définissez le code de réponse à être avant, CherryPy enverra un 500 retour.

Vous pouvez regarder dans tous les outils que CherryPy inclut pour le débogage ou la journalisation (je ne suis pas familier avec eux). Vous pouvez également définir des points d'arrêt dans votre code et continuer à entrer dans les composants internes de CherryPy jusqu'à ce qu'il atteigne le cas d'erreur.

+0

Oui, regardez dans les journaux d'erreurs Apache car si l'erreur 500 provient de la base de l'infrastructure CherryPy ou de mod_wsgi, il devrait y avoir un message à ce sujet. –

+0

Les journaux ne montrent aucun problème. Il semble que mod_wsgi prenne mon URL et la redirige d'une manière ou d'une autre mais je n'ai aucune idée pourquoi et comment déboguer ceci. –