Django Channels HTTP/WebSocket server
Go to file
2016-07-13 14:09:14 +02:00
daphne expose file descriptor on command line 2016-07-13 14:09:14 +02:00
.gitignore Ignore Python compiled files 2016-06-15 21:18:56 +02:00
.travis.yml Add Travis CI config 2016-02-05 17:25:37 -08:00
CHANGELOG.txt Releasing 0.14.2 2016-07-07 16:58:12 -07:00
Makefile Add release makefile 2016-06-28 15:27:04 -07:00
README.rst Fix header name, add test 2016-06-21 08:20:34 -07:00
setup.cfg Daphne is a universal wheel 2016-03-27 14:14:46 -07:00
setup.py Releasing 0.14.2 2016-07-07 16:58:12 -07:00

daphne
======

.. image:: https://api.travis-ci.org/andrewgodwin/daphne.svg
    :target: https://travis-ci.org/andrewgodwin/daphne
    
.. image:: https://img.shields.io/pypi/v/daphne.svg
    :target: https://pypi.python.org/pypi/daphne

Daphne is a HTTP, HTTP2 and WebSocket protocol server for
`ASGI <http://channels.readthedocs.org/en/latest/asgi.html>`_, and developed
to power Django Channels.

It supports automatic negotiation of protocols; there's no need for URL
prefixing to determine WebSocket endpoints versus HTTP endpoints.


Running
-------

Simply point Daphne to your ASGI channel layer instance, and optionally
set a bind address and port (defaults to localhost, port 8000)::

    daphne -b 0.0.0.0 -p 8001 django_project.asgi:channel_layer


Root Path (SCRIPT_NAME)
-----------------------

In order to set the root path for Daphne, which is the equivalent of the
WSGI ``SCRIPT_NAME`` setting, you have two options:

* Pass a header value ``Daphne-Root-Path``, with the desired root path as a
  URLencoded ASCII value. This header will not be passed down to applications.

* Set the ``--root-path`` commandline option with the desired root path as a
  URLencoded ASCII value.

The header takes precedence if both are set. As with ``SCRIPT_ALIAS``, the value
should start with a slash, but not end with one; for example::

    daphne --root-path=/forum django_project.asgi:channel_layer