Servers which support WSGI

This is an alphabetic list of WSGI servers. In some cases these are WSGI-only systems, in other cases a package includes a server.

Please feel free to expand the list or descriptions. Direct links to documentation on how to use the server is especially appreciated.


A threaded/forking WSGI server implemented in C (it embeds a Python interpreter to run the actual application). It communicates with the web server via AJP, and is known to work with mod_jk and mod_proxy_ajp. Also available in an SCGI flavor.


A pure-Python web server (using the CherryPy module mentioned next) with three hooks to hang your WSGI on.


A “screamingly fast Python WSGI server” and boasts that it is “the fastest, smallest and most lightweight WSGI server.” See performance testing testing WSGI servers with wrk See the install instructions


CherryPy’s “high-speed, production ready, thread pooled, generic WSGI server.” Includes SSL support. Supports Transfer-Encoding: chunked. For details on running foreign (non-CherryPy) applications under the CherryPy WSGI server, see WSGI Support. See also the CherryPy wiki ModWSGI page.


A fast HTTP server supporting WSGI, with extensions for Coroutine-based pages with deeply-integrated COMET support.


WSGI server with extensions for coroutine oriented programming.


Fapws is a WSGI binding between Python and libev.

See also: author’s block, GoogleGroup.


fcgiapp is a Python wrapper for the C FastCGI SDK. It’s used by PEAK’s FastCGI servers to provide WSGI-over-FastCGI.


Includes threaded and forking versions of servers that support FastCGI, SCGI, and AJP protocols.


WSGI-over-FastCGI server implemented using gevent coroutine-based networking library. Supports FastCGI connection multiplexing. Includes adapters for Django and other frameworks that use PasteDeploy.


WSGI HTTP Server for UNIX, fast clients and nothing else. This is a port of Unicorn to Python and WSGI.


An implementation of WSGI for running as a ISAPI extension under IIS.


James provides a very simple multi-threaded WSGI server implementation based on the HTTPServer from Python’s standard library. (unmaintained)


A WSGI Server inspired by Unicorn, written in pure Python.


WSGI server built with M2Crypto and twisted.web2 with some SSL related tricks. Used with client side smart cards and it is also possible to run the HTTPS server with a key in a HSM (like a crypto token)


Modjy is a java servlets to WSGI gateway that enables the running of jython WSGI applications inside java servlet containers.


Python WSGI adapter module for Apache


NWSGI is a .NET implementation of the Python WSGI specification for IronPython and IIS. This makes it easy to run Python web applications on Windows Server. This is a potential alternative to ISAPI + ISAPI_WSGI modules.


Netius is a Python network library that can be used for the rapid creation of asynchronous non-blocking servers and clients. It has no dependencies, it’s cross-platform, and brings some sample netius-powered servers out of the box, namely a production-ready WSGI server.


Minimalistic threaded WSGI server built on BaseHTTPServer. Doesn’t support Transfer-Encoding: chunked.

phusion passenger

“proof of concept” WSGI since 2008 (1.x), support upgraded to “beta” in version 3 (with limitations e.g. requires Ruby even when unused) and first-class in Passenger 4.


python-fastcgi is a lightweight wrapper around the Open Market FastCGI C Library/SDK. It includes threaded and forking WSGI server implementations.


A WSGI server based on Twisted Web’s HTTP server (requires Twisted 8.2 or later).


A new lightweight declarative-configuration application server by NGINX, Inc, with built-in first-class support for WSGI (and ASGI), including websocket support.


Fast, self-healing, developer-friendly WSGI server, meant for professional deployment and development of Python Web applications.


Werkzeug’s multithreaded and multiprocessed development server. Wraps wsgiref to add a reloader, multiprocessing, static files handling and SSL.


Wsgid is a generic WSGI handler for mongrel2 webserver. Wsgid offers a complete daemon environment (start/stop/restart) to your app workers, including automatically re-spawning of processes.


WSGIserver is a high-speed, production ready, thread pooled, generic WSGI server with SSL support for both Python 2 (2.6 and above) and Python 3 (3.1 and above). WSGIserver is a one file project with no dependency.


Includes a threaded HTTP server.

wsgiref (Python 3)

Included as part of thef standard library since Python 2.5; it includes a threaded HTTP server, a CGI server (for running any WSGI application as a CGI script), and a framework for building other servers.

For versions prior to Python 2.5, see wsgiref’s original home.