代码之家  ›  专栏  ›  技术社区  ›  Nicholas Knight

Python 3中的Web网关接口

  •  24
  • Nicholas Knight  · 技术社区  · 14 年前

    我终于得出结论,我再也不能只希望正在进行的Py3k/WSGI 灾难 问题很快就会解决,所以我需要准备好继续前进。

    不幸的是,我的选择似乎并没有那么好:

    • 虽然我发现了几个不同的用于FastCGI的Python模块分散在web上,但它们似乎都没有得到太多(如果有的话)的关注和/或维护,特别是在Python 3.x方面,而且很难区分哪一个(如果有的话)是真正可行的。
    • 一路回到内置的CGI模块并不比自己从头开始构建更好(更糟糕的是,有一两个重要的bug可能在Python 3.3之前不会引起注意)。
    • 没有比直接在生产webapp中处理HTTP更高的sin了。不管怎样,那是 仍然 重新发明轮子。

    当然 某人 我们正在3.x上部署webapps。您使用的是什么网关接口,使用哪个模块/库,为什么?

    2 回复  |  直到 14 年前
        1
  •  2
  •   Graham Dumpleton    14 年前

    Cherrypy3.2版本的候选版本支持Python3.X,因为它只在web服务器接口层支持WSGI,而不支持整个堆栈,所以您不必担心WSGI是否会更改。CherryPy有自己的内部WSGI服务器,但也可以在Apache/mod_WSGI和Python 3.1+下运行。见:

    http://www.cherrypy.org/wiki/WhatsNewIn32 http://code.google.com/p/modwsgi/wiki/SupportForPython3X

        2
  •  1
  •   wobsta    14 年前

    bottle支持Python 3,但它遭受了stdlib的破坏。但是,多部分重新实现cgi.FieldStorage,可以与bottle一起用于构建Python 3 WSGI web应用程序。我刚刚发表了一篇 demo . 目前这只是一个测试,但据我所知,效果很好。