使用daphne部署django channles websocket 项目

摘要:
前言:我最近写了一个项目。一些函数是使用djangoChannelswebsocket编写的。使用的链接是wss://orws:。最后发现,您需要启用另一个进程daphne,并使用daphne启动d

前言:最近写了一个项目,有部分功能使用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://

免责声明:文章转载自《使用daphne部署django channles websocket 项目》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇跟我学算法-pca(降维)K8S之traefik高级特性下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

django 框架模型之models常用的Field,及常见错误原因及处理方案。

1. django 模型models 常用字段          1、models.AutoField          自增列 = int(11)        如果没有的话,默认会生成一个名称为 id 的列        如果要显式的自定义一个自增列,必须设置primary_key=True。   2、models.CharField    ...

Django相关问题

遇到models模型变动后无法用migrations生成改动后的表通过以下几个方面实现1python manage.py makemigrations yourapp(你改变的app) 2python manage.py makemigrations 3python manage.py migrate pip没办法安装: 删除C:Python36Libsi...

网站开启https后加密协议始终是TLS1.0如何配置成TLS1.2?

网站开启https后加密协议始终是TLS1.0如何配置成TLS1.2?   要在服务器上开启 TLSv1.2,通常要求基于 OpenSSL 环境的,使用 OpenSSL 1.0+ ,推荐 OpenSSL 1.0.1+。 要求基于 Java 环境的,使用 Jdk 1.7+ 。 查看openssl的版本: # openssl version...

WebSocket传输图片

本文之初是想做简易直播系统,然而利用Html5+WebSocket还是有难度啊。本文只是打通了图像采集->服务器,再由服务器推送到客户端的过程。中间全程使用Image Base64字符串传输(效率不高) 以下是实现步骤 1.实现服务端:有socket和WebSocket两大块构成。socket作为主线程,用于处理图像源上传请求以及管理WebSocke...

抓apk中的https包(​含破解https的SSL Pinning)

一般来说,http请求的包都可以通过fiddler来抓包(http2.0不支持)。 https抓包的原理是利用中间人攻击,向客户端伪装成服务端,向服务端伪装成客户端,从而可以抓包,但是有部分https的包是抓取不了的。 其中可能用到了SSL Pinning(证书绑定或SSL证书绑定)技术。 然而道高一尺魔高一丈,下面通过一种简单的办法来修改apk的配置,允...

常用邮箱SMTP服务器地址大全

常用邮箱SMTP服务器地址大全 阿里云邮箱(mail.aliyun.com) POP3服务器地址:pop3.aliyun.com(SSL加密端口:995;非加密端口:110) SMTP服务器地址:smtp.aliyun.com(SSL加密端口:465;非加密端口:25) IMAP服务器地址:imap.aliyun.com(SSL加密端口:993;非加...