【问题标题】:Serving static files with WSGI and Python 3使用 WSGI 和 Python 3 提供静态文件
【发布时间】:2011-10-09 03:08:08
【问题描述】:

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

【问题讨论】:

    标签: python file python-3.x wsgi


    【解决方案1】:

    这里有几个指向 Python 3 的 WSGI 应用程序信息的链接。

    自定义:https://bitbucket.org/mitsuhiko/wsgi3k/ modwsgi:http://code.google.com/p/modwsgi/wiki/SupportForPython3X CherryPy:http://www.cherrypy.org/wiki/WSGI 特别是 WSGI 1.0 与 WSGI 1.1 部分。

    所有这些链接都来自这个页面:

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

    在我看来,目前最成熟的一个是 CherryPy。我也确信 CherryPy 提供了一种提供静态文件的简单方法。

    【讨论】:

    • 感谢您的链接。我正在寻找一个简单的应用程序,而不是整个服务器。你知道类似的事情吗?
    【解决方案2】:

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

    编辑:有趣的是,在你澄清你的问题后,我才发现自己在这个地方。这是我发现的一些你可能会欣赏的东西。它被称为“静态”。

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

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

    【讨论】:

    • 我同意,但我希望在开发过程中尽可能简单地提供静态文件。现在我使用的是 wsgiref,它不能提供静态文件。
    • 在 Github here 上还维护了一个更新的 Python3 兼容的静态分支(因为原始版本在 4 年前收到了最后一次提交,并且在撰写本文时不支持 Python 3)。跨度>
    【解决方案3】:

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

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-07
    • 2023-03-06
    • 2020-01-29
    • 2010-10-18
    • 2019-07-16
    • 2013-10-17
    • 2011-01-27
    相关资源
    最近更新 更多