-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
75 additions
and
26 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
WSGIserver | ||
========== | ||
|
||
**WSGIserver** is a high-speed, production ready, thread pooled, generic WSGI server with **SSL support**. | ||
|
||
WSGIserver suppport both Python 2 and Python 3. | ||
|
||
WSGIserver is developed by Florent Gallaire [email protected]. | ||
|
||
Website: http://fgallaire.github.io/wsgiserver. | ||
|
||
Download and Install | ||
-------------------- | ||
|
||
To install the last stable version from PyPI:: | ||
|
||
$ sudo pip install wsgiserver | ||
|
||
To install the development version from GitHub:: | ||
|
||
$ git clone https://github.com/fgallaire/wsgiserver | ||
$ cd wsgi | ||
$ sudo python setup.py install | ||
|
||
Documentation and Caveats | ||
------------------------- | ||
|
||
- WSGIserver support Python 2.6 and above and Python 3.1 and above | ||
|
||
- WSGIserver require six | ||
|
||
Usage | ||
----- | ||
|
||
Simplest example on how to use WSGIserver:: | ||
|
||
import wsgiserver | ||
|
||
def my_app(environ, start_response): | ||
status = '200 OK' | ||
response_headers = [('Content-type','text/plain')] | ||
start_response(status, response_headers) | ||
return ['WSGIserver is running!'] | ||
|
||
server = wsgiserver.WSGIServer(('0.0.0.0', 8070), my_app) | ||
server.start() | ||
|
||
WSGIserver can serve as many WSGI applications as you want in one | ||
instance by using a ``WSGIPathInfoDispatcher``:: | ||
|
||
d = wsgiserver.WSGIPathInfoDispatcher({'/': my_app, '/blog': my_blog_app}) | ||
server = wsgiserver.WSGIServer(('0.0.0.0', 80), d) | ||
|
||
To add SSL support, just set ``server.ssl_adapter`` to an ``SSLAdapter`` instance:: | ||
|
||
server.ssl_adapter = wsgiserver.SSLAdapter('certificate.pem', 'privatekey.pem') | ||
|
||
Naming | ||
------ | ||
|
||
- *WSGIserver* is the project name | ||
|
||
- *wsgiserver* is the Python module name | ||
|
||
- *WSGIServer* is the main class name | ||
|
||
License | ||
------- | ||
|
||
WSGIserver files are released under the GNU AGPLv3 or above license. | ||
|
||
WSGIserver codebase from CherryPy by CherryPy Team ([email protected]) under the 3-clause BSD license. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters