一、服务器环境准备
部署前需完成以下基础配置:
- 购买云服务器(推荐阿里云/腾讯云的Ubuntu或CentOS系统)并完成系统升级:
sudo apt update && sudo apt upgrade -y
- 安装Python开发依赖库,例如Ubuntu系统需执行:
sudo apt install libssl-dev zlib1g-dev libsqlite3-dev
- 通过源码编译或软件包管理器安装Python3.6+版本,并建立软链接到系统路径
二、项目依赖与数据库配置
关键操作包括:
- 使用
pip install -r requirements.txt
安装项目依赖包 - 部署MySQL时需删除系统自带的MariaDB,并通过
yum install mysql-server
或apt install mysql-server
安装 - 在Django的
settings.py
中配置数据库连接信息,开启远程访问权限
三、部署工具选择与配置
推荐两种主流方案:
- uWSGI方案:通过
pip install uwsgi
安装,创建uwsgi.ini
配置文件定义socket端口和进程数 - Gunicorn方案:使用
gunicorn --bind 0.0.0.0:8000 project.wsgi
启动服务,建议搭配supervisor进程管理
四、Web服务器反向代理
Nginx配置要点:
- 在
/etc/nginx/sites-available/
创建配置文件,设置80端口监听 - 配置静态文件路径:
location /static { alias /path/to/static; }
- 添加反向代理规则,将动态请求转发到uWSGI或Gunicorn服务端口
成功部署需注意防火墙配置(开放80/8000端口)和域名解析,建议通过python manage.py collectstatic
收集静态文件,最后使用systemctl restart nginx
重启服务完成部署。