zoukankan      html  css  js  c++  java
  • 使用daphne部署django channles websocket 项目

    前言:最近写了一个项目,有部分功能使用django channles websocket写的,使用的链接是wss:// 或者 ws:// ,到真实在uwsgi+nginx部署时,发现wss:// 或者 ws://不可用了,后来查了比较多时间,尝试过修改nginx配置文件,尝试过修改uwsgi配置文件,尝试过使用gunicorn部署,都没有解决此问题。最终发现需要多启用一个进程daphne,使用daphne启动django channles websocket对应功能进程,问题得到解决。

    1.增加代码:在setting.py同级目录下增加文件

      vim asgi.py

    import os
    import django
    from channels.routing import get_default_application
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "boamp.settings")
    django.setup()
    application = get_default_application()

    2.setting.py内添加配置:

    ASGI_APPLICATION = 'webssh.routing.application'

    3.安装必要模块:

    启动前安装必须模块:
    /opt/python36/bin/pip3 asgiref==2.3.2
    /opt/python36/bin/pip3 pyOpenSSL==19.1.0    #启用ssl必须模块
    /opt/python36/bin/pip3 service-identity==18.1.0

    4.启动方式:

    /opt/python36/bin/daphne -b 0.0.0.0 -p 8913 boamp.asgi:application -v2  #http协议 channles websocket 使用ws://
    /opt/python36/bin/daphne -e ssl:8913:privateKey=/etc/nginx/ssl/证书.key:certKey=/etc/nginx/ssl/证书.crt boamp.asgi:application -v2  #https协议 channles websocket 使用wss://
  • 相关阅读:
    POJ 1321 棋盘问题
    POJ3468 A Simple Problem with Integers(区间更新+区间查询+差分)
    洛谷P3374【模板】树状数组 1(单点更新+区间求和)
    Lake Counting
    柱状图统计
    数据库读取
    c作图-正弦函数图像
    Fence Repair
    Stall Reservations(贪心+优先队列)
    Table Tennis Game 2
  • 原文地址:https://www.cnblogs.com/chenjw-note/p/12516097.html
Copyright © 2011-2022 走看看