IIS 7.5上的Python瓶子和CGI(或fastCGI)可以用于生产吗?

IIS 7.5上的Python瓶子和CGI(或fastCGI)可以用于生产吗?,python,cgi,iis-7.5,fastcgi,bottle,Python,Cgi,Iis 7.5,Fastcgi,Bottle,我正在使用瓶子,并在命令提示符下运行它,即内置服务器。当我部署它时,文档中没有提到IIS: 我知道它并不是真正在考虑IIS,但Microsoft有一篇文章: 考虑到所有这些,瓶子是否可以在IIS 7.5上运行-用于生产 我在SO和其他地方看到了一些关于fastCGI和Python的问题,但我不知道这是否适用于生产 注意,我不希望使用IronPython。除了Python解释器之外,我希望尽可能多地在本地使用MS IIS(我必须这样做)。我的经验是使用Apache(在Linux和Windows

我正在使用瓶子,并在命令提示符下运行它,即内置服务器。当我部署它时,文档中没有提到IIS:

我知道它并不是真正在考虑IIS,但Microsoft有一篇文章:

考虑到所有这些,瓶子是否可以在IIS 7.5上运行-用于生产

我在SO和其他地方看到了一些关于fastCGI和Python的问题,但我不知道这是否适用于生产


注意,我不希望使用IronPython。除了Python解释器之外,我希望尽可能多地在本地使用MS IIS(我必须这样做)。

我的经验是使用Apache(在Linux和Windows上)。您提到的文章给出了ActiveState Python的一个示例(顺便说一句,它是我在Windows上使用的),适用于运行Python cgi脚本而不是fastcgi。因此,如果您想在IIS下运行fastcgi(假设fastcgi是IIS的一个选项),您必须在其他地方了解如何运行

但要回答您的问题:是的,因为IIS确实支持Python cgi脚本,所以您可以确保在该模式下运行瓶子应用程序。例如:

from bottle import Bottle
app = Bottle()

app.route('/')
def hello():
   return 'Hello!'

app.run(server='cgi')
如果您找到了一种为fastcgi配置IIS的方法,那么我建议您安装flup,然后编写以下代码:

from bottle import Bottle
app = Bottle()

app.route('/')
def hello():
   return 'Hello!'

from flup.server.fcgi import WSGIServer
WSGIServer(app).run()
无论如何,上述两个示例分别在Apache for cgi和fastcgi下工作。我可能会指出,在apache下运行cgi时,我在Windows上遇到了输出被截断的问题。在IIS下,这是否是一个问题,您将发现。看