简介
本文主要讲述通过uwsgi处理http请求,daphne处理websocket请求,然后通过supervisor管理uwsgi与daphne,最后通过nginx作为代理的各种配置以及注意事项。
具体配置
首先你肯定得有个django的项目,然后就是具体的python环境,现在python一般都是3.6左右的版本,具体的环境就如下
pip install django uwsgi supervisor channels
# 其中channels包括了daphne的环境
然后就是下载nginx环境
1)安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境
yum install gcc-c++
2)PCRE是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。
yum install -y pcre pcre-devel
3)zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
4)下载tar包
yum install wget 安装下载器(如果有可以不安装)
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
tar -zxvf nginx-1.12.0.tar.gz
2)解压安装
cd nginx-1.12.0
make & make install 编译安装
然后就可以通过systemctl start nginx.service
试试安装是否成功
以上基本环境就都搭建完成了,重头戏就在配置文件
创建asgi.py并开启asgi服务
首先要在settings.py同级目录下创建asgi.py文件,文件内容如下
import os
import django
from channels.routing import get_default_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "[你自己的项目名].settings")
django.setup()</