0%

django配置ASGI服务器教程

django配置ASGI服务器教程

环境说明:

  • 系统环境:Alibaba3

  • Python版本:3.13

  • Django版本:5.1.4

  • uvicorn版本:0.32.1

1、安装 uvicorn 服务器

pip install django uvicorn

2、创建ASGI应用程序

在Django 3.0及更高版本中,Django默认提供了一个asgi.py文件,该文件位于与wsgi.py相同的位置(通常是项目的主目录下)。这个文件包含了一个ASGI应用程序的实例,你可以直接使用它。

import os
from django.core.asgi import get_asgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', '<your_project_name>.settings') # <your_project_name> 替换成你的项目
application = get_asgi_application()

3、设置settings.py

# WSGI_APPLICATION = '<your_project_name>.wsgi.application'   # 同步请求 直接注销掉 我们不需要
ASGI_APPLICATION = '<your_project_name>.asgi.application' # 异步项目 将 <your_project_name> 替换成你的项目

4、 安装并运行ASGI服务器

要运行ASGI应用,你需要安装一个ASGI服务器,如UvicornDaphneHypercorn。然后,你可以使用这些服务器来启动你的Django应用。例如,使用Uvicorn启动Django应用的命令可能看起来像这样

# uvicorn your_project_name.asgi:application   # 默认启动  访问地址为  http://127.0.0.1:8000

# 可以自己指定端口
uvicorn your_project_name.asgi:application --host 0.0.0.0 --port 8035 # 指定所有ip可访问 项目运行端口为 8035