Мне нужно запустить приложение django в Windows под IIS6 или IIS7 (да, я не знаю точных требований сейчас).
Что я сделал:
Я попытался настроить рабочую среду на моей машине с Windows 7 (пока что это IIS7). Я следовал инструкциям на django trac , используя PyISAPIe .
Что из этого вышло:
По-видимому, либо я делаю что-то совершенно не то, либо обработчик pyisapie.py
, который я должен поместить в core/handlers
в django, очень несовместим со стабильным django (1.2). Есть как минимум две вещи, которые он «делает неправильно»:
- он пытается вызвать сигналы request_started и request_finished, используя устаревшие подписи, - я исправил их.
- его подкласс
http.HttpRequest
(PyISAPIeRequest) не соответствует интерфейсу HttpRequest, - path_info
опущен. Я полагаю, это происходит из среды, аналогично тому, как это делает WSGIRequest
. Так что я тоже взломал это.
Я действительно понятия не имею, что еще мне не удастся (очевидно, у него также есть проблема с многочастными формами ), и, честно говоря, я не готов принять решение, которое может умереть от меня в любой момент в процессе производства (хотя, на мой взгляд, я бы хотел, чтобы весь IIS + Django действительно работал).
Есть ли другие способы запуска django на windows? Возможно, я могу использовать автономный сервер, такой как flup, и использовать IIS в качестве обратного прокси-сервера (хотя я не знаю, возможно ли это вообще)? Мне нужна базовая аутентификация windows +, - приложение должно использовать сервер удаленной аутентификации пользователя , хотя аутентификация - не единственная причина, по которой IIS должен использоваться.
Я не могу использовать другую машину, и я против установки полноценного веб-сервера (технически я мог бы использовать apache + mod_wsgi). Производительность / высокая доступность не будут проблемой, но одно можно сказать наверняка, - большие загрузки файлов должны обрабатываться правильно (см. Выше о составных формах).