J'ai besoin d'exécuter une application django sur Windows sous IIS6 ou IIS7 (oui, je ne connais pas les exigences exactes pour l'instant). Ce que j'ai fait:
J'ai essayé de mettre en place un environnement de travail sur ma machine Windows 7 (donc IIS7 pour l'instant). J'ai suivi les instructions au django trac en utilisant PyISAPIe.Django + IIS +?
Ce qui en est sorti:
Apparemment, soit je suis en train de faire quelque chose de complètement faux, ou le gestionnaire pyisapie.py
, que je suis censé mettre en core/handlers
de django est très incompatible avec django stable (1.2). Il y a au moins deux choses qu'il « fait mal »:
- il tente d'invoquer des signaux request_started et request_finished en utilisant les signatures obsolètes, - j'ai fixé ceux-ci. Sa sous-classe
http.HttpRequest
(PyISAPIeRequest) n'est pas conforme à l'interface HttpRequest, -path_info
est omis. Je suppose, il sort de l'environnement, analogue à la façon dont leWSGIRequest
le fait. J'ai donc piraté ça aussi.
Je ne sais vraiment pas quoi d'autre échouera sur moi (apparemment, il a aussi un problem with multipart forms) et, très franchement, je ne suis pas prêt à accepter une solution qui pourrait mourir sur moi à tout moment dans la production (Bien que, sur une note de côté, j'aimerais faire tout le travail IIS + Django fonctionne réellement).
Existe-t-il d'autres moyens d'exécuter django sous Windows? Peut-être que je peux utiliser un serveur autonome, comme flup et utiliser IIS comme un proxy inverse (bien que je ne sais pas si c'est possible du tout)? J'ai besoin de Windows + authentification de base, - l'application est censée utiliser le remote user authentication backend, bien que l'authentification n'est pas la seule raison pour laquelle IIS doit être utilisé.
Je ne peux pas utiliser une autre machine et je suis contre l'installation d'un serveur Web complet (j'utiliserais techniquement apache + mod_wsgi). La performance/haute disponibilité ne sera pas un problème, mais une chose est certaine, - les téléchargements de gros fichiers doivent être gérés correctement (voir plus haut à propos des formulaires multipart).