2011-07-20 39 views
6

使用WSGI和Python 3.2提供静态文件最简单的方法是什么?为此目的,有一些用于PEP 333和Python 2的WSGI应用程序 - 但是是关于PEP 3333和Python 3的?我想用wsgiref进行开发。使用WSGI和Python 3提供静态文件

回答

1

这里有几个的信息的链接上WSGI应用用于Python 3.

自定义:https://bitbucket.org/mitsuhiko/wsgi3k/ modwsgi:http://code.google.com/p/modwsgi/wiki/SupportForPython3X 的CherryPy:http://www.cherrypy.org/wiki/WSGI具体地说WSGI 1.0与1.1 WSGI部分。

所有这些链接都来自此页:

http://www.wsgi.org/wsgi/Python_3

它看起来对我来说,在这一点上最成熟的一个是CherryPy的。我也确信CherryPy提供了一种简单的方法来提供静态文件。

+0

感谢您的链接。我正在寻找一个简单的应用程序,而不是整个服务器。你知道这样的事吗? – deamon

7

通常,您不想使用WSGI来提供静态文件。使用WSGI可以使用Python生成动态内容。根据定义,静态文件不是动态内容,因此您不需要额外的WSGI层以及您构建的任何Web应用程序。相反,您最好将您的Web服务器(apache,nginx,iis等)设置为与您的WSGI应用程序一起单独提供静态文件。

编辑︰有趣的是,我只是在你澄清你的问题后发现自己在这个位置。这是我发现你可能会喜欢的东西。它被称为“静态”。

http://lukearno.com/projects/static/

https://bitbucket.org/luke/static/

+1

我同意,但我想在开发过程中尽可能简单地提供静态文件。而现在我正在使用无法提供静态文件的wsgiref。 – deamon

+1

在Github [这里](https://github.com/rmohr/static3)上还有一个新的Python3兼容的静态分支(因为原始版本在4年前收到它的最后一次提交,并且不支持Python 3写这个)。 – metakermit

2

Bottle支持PEP 3333,serving static files是非常小的。它可能适合你的账单。我同意Mark Hildreth的回答,但如果你需要静态服务来开发和使用Python 3,Bottle是一个不错的选择。注意:Bottle使用2to3。

+0

自[版本0.11](http://bottlepy.org/docs/dev/changelog.html#release-0-11)以来,不再需要2to3。 – webwurst