🗣 Wd提问: django云服务器
🤖 Ai回答: 在云服务器上部署 Django 项目是一个常见的需求,以下是详细的步骤和注意事项,帮助你顺利完成部署:
一、准备工作
1、开发环境
本地完成 Django 项目开发,并通过测试。
使用 `requirements.txt` 记录依赖:
bash
pip freeze requirements.txt
2、代码托管
将代码上传至 GitHub/GitLab 等平台,便于服务器拉取。
二、选择云服务器
国内主流平台:阿里云、腾讯云、华为云(新用户常有优惠)。
配置建议:
小型项目:1核2GB + 5Mbps带宽(约50元/月)。
生产环境:至少2核4GB + 带宽按需升级。
操作系统:推荐 Ubuntu 22.04 LTS 或 CentOS 7+。
三、服务器基础配置
1、登录服务器
bash
ssh root@你的服务器IP
2、创建非root用户(安全增强)
bash
adduser django_user
usermod -aG sudo django_user
3、更新系统
bash
sudo apt update && sudo apt upgrade -y
四、安装必要组件
1、Python 环境
bash
sudo apt install python3-pip python3-venv
2、数据库(以 PostgreSQL 为例)
bash
sudo apt install postgresql postgresql-contrib
sudo -u postgres psql
在PostgreSQL中创建数据库和用户
CREATE DATABASE myproject;
CREATE USER myuser WITH PASSWORD 'mypassword';
GRANT ALL PRIVILEGES ON DATABASE myproject TO myuser;
3、其他依赖
bash
sudo apt install nginx git firewalld
五、部署 Django 项目
1、拉取代码
bash
git clone https://github.com/yourusername/yourproject.git
2、创建虚拟环境
bash
python3 -m venv venv
source venv/bin/activate
3、安装依赖
bash
pip install -r requirements.txt
4、配置环境变量
在 `settings.py` 旁创建 `.env` 文件:
env
SECRET_KEY=your_secret_key
DEBUG=False
ALLOWED_HOSTS=你的服务器IP,域名
DATABASE_URL=postgres://myuser:mypassword@localhost/myproject
5、迁移数据库
bash
python manage.py migrate
6、收集静态文件
bash
python manage.py collectstatic
六、配置 Gunicorn + Nginx
1、安装 Gunicorn
bash
pip install gunicorn
2、创建 Gunicorn 服务
新建 `/etc/systemd/system/gunicorn.service`:
ini
[Unit]
Description=gunicorn daemon
After=network.target
[Service]
User=django_user
Group=www-data
WorkingDirectory=/home/django_user/yourproject
ExecStart=/home/django_user/yourproject/venv/bin/gunicorn workers 3 bind unix:/run/gunicorn.sock yourproject.wsgi:application
[Install]
WantedBy=multi-user.target
启动服务:
bash
sudo systemctl start gunicorn
sudo systemctl enable gunicorn
3、配置 Nginx
新建 `/etc/nginx/sites-available/yourproject`:
nginx
server {
listen 80;
server_name 你的域名或IP;
location /static/ {
alias /home/django_user/yourproject/staticfiles/;
}
location / {
include proxy_params;
proxy_pass http://unix:/run/gunicorn.sock;
}
}
启用配置:
bash
sudo ln -s /etc/nginx/sites-available/yourproject /etc/nginx/sites-enabled/
sudo nginx -t 测试配置
sudo systemctl restart nginx
七、安全加固
1、防火墙设置
bash
sudo ufw allow 80
sudo ufw allow 22
sudo ufw enable
2、关闭 DEBUG 模式
确保 `settings.py` 中:
python
DEBUG = False
3、HTTPS 配置(使用 Let's Encrypt)
bash
sudo apt install certbot python3-certbot-nginx
sudo certbot nginx -d yourdomain.com
八、高级优化
1、静态文件 CDN:将 `STATIC_ROOT` 指向云存储(如阿里云OSS)。
2、负载均衡:流量大时,在多台服务器前配置负载均衡器。
3、监控:使用 `supervisord` 管理进程,`Prometheus+Grafana` 监控性能。
九、常见问题排查
502 Bad Gateway:检查 Gunicorn 是否运行:`sudo systemctl status gunicorn`
静态文件404:确保 Nginx 配置中的 `alias` 路径正确。
数据库连接失败:检查 `.env` 中的 `DATABASE_URL` 格式。
通过以上步骤,你的 Django 项目应该已在云服务器上稳定运行。建议在部署前通读 [Django 部署文档](https://docs.djangoproject.com/en/stable/howto/deployment/) 和云平台官方指南。遇到问题可查阅日志(`/var/log/nginx/error.log` 或 `journalctl -u gunicorn`)。
📣 商家广告:





0
IP地址: 250.242.203.34
搜索次数: 0
提问时间: 2025-11-08 10:56:53
🛒 域名购买:
pai.pw
pcks.cn
qppp.com.cn
8.he.cn
671.net.cn
mmmf.com.cn
40.gold
2.sd.cn
xq.gs
06.gold
❓️ 热门提问:
关键词工具广告投放
蜘蛛池服务器
php运行环境搭建
ct机房温度和湿度
高品质网站设计
佛山idc
稳定免费空间
独立建站开发
网站怎么连接服务器
好用的电脑主机性价比高
豌豆Ai站群搜索引擎系统
🌐 域名评估:
dji.gx.cn
trump.tj.cn
nfwq.cn
f.sh.cn
wpbf.cn
vtoltower.net.cn
sf.jx.cn
xjli.cn
ev.yn.cn
u.tw.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
网站上传文件
Search engine ranking
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。