有没有计划用IIS正式支持Django?

时间:2008-12-17 14:49:37

标签: django iis

我之所以说得恰到好处,是因为我过去与之交谈的每个人都表示在IIS上运行Django是一个黑客行为。我有点工作,但它从来没有做得很好,感觉像是一个黑客。我喜欢python但不得不放弃它,因为我永远无法让Django与IIS一起工作,而Django是我在生产网络应用程序中使用Python的借口。但它太乱了,我无法凭良心将它卖给小组。所以,我想为什么要打它,只需坚持使用asp.net,IIS,自己动手或使用MS的框架。只是想知道是否有任何改变。顺便说一下,不要敲asp.net。我只是想使用Python。

谢谢。

编辑 - 是否有正式支持IIS的新计划?

8 个答案:

答案 0 :(得分:4)

Django是基于WSGI的框架,因此只要IIS获得正确的WSGI处理,在这种环境下运行Django应该没有问题。任何连接WSGI和IIS的东西都可以。

快速Google搜索显示some project on Google Code

答案 1 :(得分:4)

看一下Helicon Zoo本机快速IIS 7模块来运行Python / Django应用程序。

关于它的精彩文章:Running Django on Windows

答案 2 :(得分:2)

通过WSGI与IIS直接集成还有另一种(更快)的替代方案:PyISAPIe

isapi-wsgi基于Python中包含的相对过时的ISAPI模块,并且与IIS6 / 7的设计不相符。 FastCGI处于进程外,需要与IIS建立IPC连接。基本CGI意味着为每个请求重新加载Python。

此外,PyISAPIe为那些喜欢性能优于兼容性的用户提供了一个低级接口。

答案 3 :(得分:1)

我正在四处寻找同一主题的一些信息。我找到了一个关于Codeplex的项目,Jeff Hardy在.net上实现了WSGI接口--NWSGI。他的博客上还有一些关于专门运行DJANGO和IronPython的条目。

博客:http://jdhardy.blogspot.com/search/label/Django

NWSGI项目:http://nwsgi.codeplex.com/

答案 4 :(得分:1)

我知道这不是您正在寻找的答案,但希望它可以帮助其他人!

  

我在我的博客上发布了Django on Windows 2008 tutorial/howto,您可能会觉得有帮助。

在尝试使用PyISAPIe在IIS7上运行Django几个小时之后,我放弃了,因为我在访问网站的URL时遇到了这个(难以诊断)的错误代码:

PyISAPIe
0x8007007e

显然,这也发生在PHP ISAP(显然表明缺少DLL依赖性),因此它可能与我使用PyISAPIe时遇到的问题相同。此外,当我尝试使用安装程序进行安装时,我收到了一些关于丢失DLL的错误,因此听起来合乎逻辑。

无论如何,只要说,看起来像Django + IIS并不那么受欢迎,所以支持看起来并不出色...

服务器有一个额外的IP地址,所以现在我只是沿着IIS7运行Apache,因为服务器上运行了一些.Net应用程序。

旁注:要同时运行IIS7和Apache,您需要告诉IIS7 only bind to one IP address

更新:刚刚让Django在Windows Server 2008上工作!它在Apache上运行现有的IIS7安装(只绑定一个IP),并且似乎工作得很好......而且,我推荐这条路线,而不是试图让IIS7与Django玩得很好 - 相信我,你会有更好的时间。

答案 5 :(得分:0)

您应该能够使用MS开发的FastCGI isapi。它适用于6但在7上有更好的集成。免责声明:我没有尝试使用Django。

答案 6 :(得分:0)

除了Microsoft创建的产品和语言之外,通常不提供“官方”支持。

答案 7 :(得分:0)

至于“官方”位...由于Django 1.0(及更新版本)全部符合WSGI,如果WSGI在某个时间成为唯一的“官方”部署方法,我不会感到惊讶。由于mod_python已弃用(并且不再开发),而FastCGI实际上由FCGI-to-WSGI网关提供服务,这似乎是合理的预测。