Django 项目打包部署完整指南(适配你的项目,零报错)

Django 项目打包部署完整指南(适配你的项目,零报错)

结合你已完成的 Django 项目(Python3.8 + Django3.x + SQLite),以下是 简单、可落地、无技术门槛 的打包部署步骤,全程对应你的项目路径和环境,直接跟着操作即可完成部署。

一、部署前准备(必做)

1. 项目文件整理(确保无遗漏)

先确认项目目录结构(和你本地一致):

复制代码
Django项目根目录/
├─ manage.py
├─ app/(你的应用,含models.py、views.py)
│  ├─ templates/(含login.html、register.html等)
│  └─ ...
├─ media/(图片上传文件夹,自动生成)
└─ db.sqlite3(数据库文件)

2. 确认依赖已安装(避免部署后报错)

打开 Anaconda 终端,执行以下命令,确保所有依赖安装完成:

bash 复制代码
pip install django==3.2  # 匹配你当前使用的Django版本

3. 关闭调试模式(部署必做)

打开 mysite/settings.py,找到 DEBUG 配置,修改为:

python 复制代码
DEBUG = False  # 部署时必须关闭调试模式,避免泄露敏感信息
ALLOWED_HOSTS = ['127.0.0.1', 'localhost']  # 允许访问的主机,可根据需求添加服务器IP

二、本地打包(将项目完整打包,便于部署)

步骤1:压缩项目文件

  1. 找到你的项目根目录(即包含 manage.py 的文件夹);
  2. 选中根目录下所有文件(app 文件夹、manage.pydb.sqlite3media 文件夹);
  3. 右键压缩为 ZIP 文件(命名为 django-project.zip),压缩时确保 不遗漏任何文件 (尤其是 media 文件夹和模板文件)。

步骤2:检查打包完整性

解压 ZIP 文件,确认以下内容齐全:

  • app 文件夹(含 models.pyviews.py
  • templates 文件夹(含所有 HTML 文件)
  • media 文件夹(含上传的图片)
  • db.sqlite3(数据库文件)
  • manage.pysettings.py 等核心文件

三、部署方式(2种,按需选择,优先推荐方式1)

方式1:本地部署(简单,适合测试/个人使用)

  1. 把压缩包解压到你想部署的电脑(如另一台电脑、服务器);

  2. 打开终端,进入项目根目录,执行:

    bash 复制代码
    # 激活环境(若用Anaconda,先激活对应的环境)
    conda activate 你的环境名(如base)
    # 执行数据库迁移(确保数据同步)
    python manage.py migrate
    # 启动项目(部署后可后台运行)
    python manage.py runserver 0.0.0.0:8000  # 允许局域网内访问
  3. 打开浏览器,输入 http://部署电脑IP:8000,即可正常访问(如 192.168.1.100:8000)。

方式2:服务器部署(正式使用,推荐)

若你有云服务器(如阿里云、腾讯云),部署步骤如下:

  1. 登录云服务器,安装基础环境(和你本地一致):

    bash 复制代码
    # 安装Python3.8
    sudo apt-get install python3.8 python3-pip
    # 安装Django
    pip install django==3.2
  2. 通过 FTP 工具(如 FileZilla),将本地打包的 ZIP 文件上传到服务器;

  3. 解压 ZIP 文件,进入项目根目录,执行:

    bash 复制代码
    # 启动项目(后台运行,避免关闭终端后停止)
    nohup python manage.py runserver 0.0.0.0:80 &
  4. 配置服务器安全组,开放 80 端口,即可通过服务器 IP 访问你的项目(如 http://服务器IP:80)。

四、部署注意事项(关键!)

  1. 部署后,media 文件夹(图片上传目录)需确保有读写权限,否则无法上传图片;
  2. 若部署到服务器,需确保服务器开放 80 端口(用于访问项目);
  3. 项目运行后,不要删除 db.sqlite3,否则会丢失所有数据;
  4. 若需要长期运行,建议用 nohup 命令启动,避免终端关闭后项目停止。

五、验证部署成功

  1. 访问 http://部署IP:80,能看到首页,说明部署成功;
  2. 测试登录、表单提交、图片上传功能,确认无异常;
  3. 访问 http://部署IP/admin,用之前创建的管理员账号登录,确认后台可正常使用。
相关推荐
2401_8323655241 分钟前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python
Sirius.z43 分钟前
第J3周:DenseNet121算法详解
python
2301_779622411 小时前
Go语言怎么用信号量控制并发_Go语言semaphore信号量教程【入门】
jvm·数据库·python
2301_766283441 小时前
c++如何将控制台输出保存到文件_cout重定向到txt【详解】
jvm·数据库·python
小康小小涵3 小时前
基于ESP32S3实现无人机RID模块底层源码编译
linux·开发语言·python
lzjava20243 小时前
Python的函数
开发语言·python
Azhao11063 小时前
商城产品详情页的客服咨询在哪里设置详解:从入门到实战全攻略
sqlite
Awesome Baron3 小时前
skill、tool calling、MCP区别
开发语言·人工智能·python
测试员周周4 小时前
【AI测试系统】第4篇:告别硬编码!基于 Markdown + Python 的 Skill 引擎设计:让 AI 测试系统拥有无限扩展的“灵魂”
人工智能·python·测试
武帝为此4 小时前
【Selenium 屏幕截图】
python·selenium·测试工具