文章目录
总结:
linux下,用户对文件没有可执行权限,以下配的再好,都是瞎扯!!!
1.部署环境
- 前端Vue,访问后端Django项目接口以192.168.0.1:8081为例
- 服务器环境Centos 7.3
- Django服务器依赖(python环境3.6.5)和虚拟环境(本例虚拟环境为venv)
- 本地数据库Mysql,服务器数据库使用maridb,本地数据库数据迁移到服务器,可使用Navicat for Mysql工具
2.环境搭建
- 服务器python3.6.x安装不在赘述,主要步奏包括安装,建立软连接和环境变量设置(/etc/profile)
- 服务器python3.6虚拟环境搭建
注意: linux服务器搭建虚拟环境使用virtualenvwrapper,如下:
yum install python-setuptools python-devel
pip install virtualenvwrapper
- 编辑.bashrc文件
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
- 重新加载.bashrc文件
source ~/.bashrc
- 新建虚拟环境
mkvirtualenv venv
- 进入虚拟环境
workon venv
- Maridb的安装以及nginx,以及uwsgi的安装百度就好,也可参考传送门
3.Centos7.3部署
3.1.注意:
- uwsgi支持高并发的启动python项目,但是uwsgi,不支持静态文件的解析,必须使用nginx使用处理静态文件
- 前端项目部署,配置nginx代理后,若报错一般看nginx.log日志就可解决,eg:403 Forbidden ,是因为打包后的静态文件访问权限不够,chmod 777 filename即可。
3.2.部署流程图
图片取自:传送门