daphne-一个给ASGI和ASGI-HTTP使用的HTTP,HTTP2和WebSocket协议服务器

介绍

Daphne是用于ASGI和 ASGI-HTTP的HTTP,HTTP2和WebSocket协议服务器 ,其开发目的是为Django通道提供支持。

它支持协议的自动协商;无需使用URL前缀即可确定WebSocket端点与HTTP端点。

下载

daphne库文件包网盘下载

运行

只需将Daphne指向您的ASGI应用程序,然后选择设置绑定地址和端口(默认为localhost,端口8000):

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

如果打算在代理服务器后运行daphne,则可以使用UNIX套接字在两者之间进行通信:

daphne -u /tmp/daphne.sock django_project.asgi:application

如果daphne在进程管理器中运行,则可能希望将其绑定到从父进程传递来的文件描述符。为此,您可以使用--fd标志:

daphne --fd 5 django_project.asgi:application

如果要对端口/套接字绑定进行更多控制,则可以 使用--endpoint(-e)标志,该标志可以使用Twisted的端点描述字符串,该标志可以多次使用。假设当前目录中存在key.pem和crt.pem,则此行将在端口443上启动SSL服务器(需要安装pyopenssl):

daphne -e ssl:443:privateKey=key.pem:certKey=crt.pem django_project.asgi:application

端点甚至允许您使用txacme端点语法从Let's Encrypt获取自动证书,您可以在txacme.readthedocs.io/en/stable/上了解更多信息。

要查看所有可用的命令行选项,请运行带有-h标志的daphne 。

(0)

相关推荐