[Web-SIG] WSGI in standard library

Clark C. Evans cce at clarkevans.com
Wed Feb 8 01:30:55 CET 2006

I'd very much like to see a _usable_ WSGI server included in the
standard Python library: I don't care how it is done.

It should have a few requirements:

  - it should obviously implement all of WSGI that is required by a
    server implementation;

  - it should be stand-alone, only dependent upon Python's built-in
    BaseHTTPServer (not SimpleHTTPServer, for obvious reasons);

  - it should _not_ have any functionality beyond the minimums required
    by WSGI: specificially, it should not handle multiple WSGI
    applications (routing), nor should it include file downloading;

  - it should be implemented as a Mix-In so that you can use it /w any
    derivitive of BaseHTTPServer (for example one using SSL);

  - it should be accompanied by a SSL enabled server built upon
    BaseHTTPServer (and perhaps fix a few bugs in BaseHTTPServer);
  - it should fully support HTTP/1.1, including Chunked-Encoding,
    100-Continue, and degrade to HTTP/1.0 if Content-Length is
    not provided in a Client's request;

  - it should take into account design "insights" found in various
    currently competing WSGI servers; and finally,

  - it *must* be heavily tested -- ideally, already in production
    setting to identify issues that can be missed.

I wrote paste.httpserver not beacuse I needed to kill a week of my life,
I did it beacuse most of the servers out there didn't do this sort of
stuff and beacause I got tired of dealing with broken code.  You're
welcome to use paste.httpserver, or not use it.

I'd suggest looking at all possible servers out there, and stealing the
best peices/ideas from each one.  I will gladly lead such an effort if
it is deemed appropriate.



More information about the Web-SIG mailing list