一. 环境描述
- 服务器: 阿里云ecs
- 系统版本:Ubuntu 18.04LTS
- 部署环境:Python3.6 + Django 1.11.13 + uwsgi 2.0.18 + MySQL 5.7 + Redis + Nginx
###二. 步骤
说明: 至于如何在阿里云服务器中安装虚拟环境、Mysql、Reids、Nginx等我这偏文章不进行说明,免得把文章的篇幅写得太长,我这里主要记录一下配置中的几个关键步骤及可能遇到的问题及解决方案。
2.1 上线前更改setting中的配置
主要从以下几个方面进行
- 将
setting.py
文件中的DEBUG
由True
改为Flase
; - 将数据库账号、邮箱账号、微信公众号/小程序等相关的配置改成正式的账号;
- 确定线上日志的路径并调整正确;
- 配置好静态文件存放位置,如我下面打算把静态文件存放到项目根目录的
front_end/static
下面
STATIC_ROOT = os.path.join(os.path.dirname(os.path.dirname(BASE_DIR)), 'front_end/static')
说明:由于开发环境和线上环境的账号配置不一样,这一块要格外注意。有时候维护两个不同环境中的账号配置其实挺麻烦的,而且还容易弄错,一不小心还容易上传到代码仓库将重要的账号信息给给泄露了,为了安全起见,我们要把两个不同环境下的账号绝对的隔离并且交由系统保管,这样就省去了前面的一系列麻烦。后面我会专门花一篇篇幅来详细介绍处理方法。
2.2 收集静态文件
执行收集静态文件的命令
python manage.py collectstatic
这样Django admin中的静态文件(CSS/JS/HTML等)就都被收集到上面配置的项目根目录的front_end/static
下面。