VPS海外Ubuntu 22.04部署Django外贸站全流程
在VPS海外服务器上用Ubuntu 22.04部署Django外贸站,就像搭建一座外贸数字门店——从打地基(环境依赖)到装门窗(服务配置),每个环节都影响着最终“门店”的稳定性和访问体验。下面将分步骤拆解关键操作,帮你高效完成部署。
环境依赖:搭建稳定运行的“地基”
正式部署前,先给系统“体检”并安装必要工具。打开终端执行:
sudo apt update && sudo apt upgrade -y
这一步相当于给服务器“更新补丁”,确保后续安装的软件包都是最新版本,减少潜在漏洞。
Django基于Python开发,需先安装Python 3和包管理工具pip:
sudo apt install python3 python3-pip -y
为避免不同项目依赖冲突,建议用虚拟环境隔离。安装虚拟环境工具venv:
sudo apt install python3-venv -y
若外贸站需要数据库存储商品、订单等数据,这里以MySQL为例安装服务端和客户端:
sudo apt install mysql-server mysql-client -y
安装后务必执行`mysql_secure_installation`初始化安全配置(如设置root密码、删除匿名用户),这是《网络安全法》要求的基础防护措施。
虚拟环境与Django:打造独立的“项目空间”
选一个存放项目的目录(如`/var/www/`),创建并激活虚拟环境:
cd /var/www/
python3 -m venv myenv
source myenv/bin/activate
激活后命令行前会出现`(myenv)`,表示进入隔离环境。接着用pip安装Django:
pip install django
创建Django项目骨架:
django-admin startproject myproject
cd myproject
数据库配置:连通数据的“神经中枢”
打开项目的`settings.py`文件(路径`myproject/settings.py`),修改`DATABASES`部分连接MySQL:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '外贸站数据库名', # 需提前在MySQL创建
'USER': '数据库用户名',
'PASSWORD': '强密码(至少12位字母数字符号组合)',
'HOST': 'localhost',
'PORT': '3306',
}
}
注意:密码不要直接写在代码里,生产环境建议用环境变量或密钥管理工具存储,避免泄露风险。
保存后执行数据库迁移,同步模型到数据库:
python manage.py makemigrations
python manage.py migrate
服务配置:让网站“24小时营业”
Django项目需通过Web服务器对外提供服务,这里用Gunicorn(Python WSGI服务器)处理动态请求,Nginx(反向代理服务器)处理静态资源并反向代理请求。
先在虚拟环境中安装Gunicorn:
pip install gunicorn
测试启动(监听8000端口):
gunicorn myproject.wsgi:application --bind 0.0.0.0:8000
浏览器输入`**VPS海外**服务器公网IP:8000`能看到Django欢迎页,说明Gunicorn运行正常。
接着配置Nginx作为反向代理。安装Nginx:
sudo apt install nginx -y
创建Nginx配置文件`/etc/nginx/sites-available/myproject`,写入:
server {
listen 80;
server_name 你的域名或[VPS](/cart/goodsList.htm)公网IP; # 如未绑定域名可填IP
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /static/ {
root /path/to/myproject; # 替换为项目静态文件实际路径
}
}
保存后创建软链接启用配置:
sudo ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/
测试配置并重启Nginx:
sudo nginx -t
sudo systemctl restart nginx
最后设置Gunicorn开机自启。创建systemd服务文件`/etc/systemd/system/gunicorn.service`:
[Unit]
Description=Gunicorn服务(Django外贸站)
After=network.target
[Service]
User=普通用户(非root) # 降低权限风险
Group=www-data
WorkingDirectory=/var/www/myproject # 项目实际路径
ExecStart=/var/www/myenv/bin/gunicorn --workers 3 --bind unix:/var/www/myproject/myproject.sock myproject.wsgi:application
[Install]
WantedBy=multi-user.target
重新加载配置并启动服务:
sudo systemctl daemon-reload
sudo systemctl start gunicorn
sudo systemctl enable gunicorn
完成以上步骤,你的Django外贸站就能在**VPS海外**服务器上稳定运行了。从环境隔离到服务守护,每个细节都像给网站上“双保险”——既保障了访问速度,又降低了因依赖冲突或服务宕机导致的业务中断风险。现在就用29元起的**VPS海外**服务器,试试搭建自己的外贸数字门店吧!