阿里云 django+vue+nginx 前后端分离之后端部署
0 环境
服务器:阿里云 服务器操作系统:centos ssh :xshell 后端语言:django(文档) python默认版本:3.6.8
1 导图
2 xhsell安装和配置
3 激活python环境
1 环境安装
pip/pip3 install virtualenv
2 创建目录
❝若想virtualenv使用系统全局模块,
❞virtualenv --system-site-packages myprojects
virtualenv myprojects
3 环境激活
source myprojects/bin/activate
4 退出virtualenv
deactivate
3 上传本地项目到服务器上
压缩本地文件(我用的是zip格式) 通过ftp上传到服务器上(自己指定目录) 解压文件
# CentOS8 系统是默认没有安装zip组件的,我们需要手动安装 zip 和 unzip 服务。
dnf install zip unzip -y
# 解压示例,格式为:unzip [压缩文件] [被解压的目录或文件]。
# unzip aa.zip -d /test 将aa.zip 文件解压到 /tset 目录下,-d 是显示指定解压到的目录。
# 把django项目解压到我的virtualenv环境下
unzip hello.zip -d /myprojects
4 django项目相关库安装
因为涉及到跨域,在django项目找到settings.py,在CORS_ORIGIN_WHITELIST下添加你的服务器地址 还有就是正式运行时 改为DEBUG = False 迁移数据库 python manage.py makemigrations your_app_label
python manage.py migrate
启动 python manage.py runserver
会报没有某个模块的错,复制该模块名,搜索得到具体包名,pip安装,直接正常启动为止 可以pip/pip3 list查看
5 配置uWSGI
1 安装uwsgi
pip install uWSGI
2 配置uwsgi.ini
❝配置.ini 第一行一定要加[uwsgi] 不然会报错
❞
「1. 创建uwsgi.ini,可以直接输入vim uwsgi.ini
」
「2. 将下面配置复制到uwsgi.ini里」
[uwsgi]
chdir =/var/xxx/你的虚拟环境/你的项目目录
module =你的项目名称.wsgi
home =/var/xxx/你的虚拟环境
master =true
processes =4
socket =127.0.0.1:9090
chmod-socket = 666
vacuum = true
「3. 分别进入你的项目目录和虚拟环境 输入pwd 直接复制路径 修改uwsgi.ini里的路径即可」
「4. socket自定义端口配置」
「5. 最后:wq
保存即可」
3 启动uWSGI
❝加 -d 后台运行 也可以在uwsgi.ini添加
❞
1 测试的时候
命令最好是uwsgi --ini uwsgi.ini
关闭程序 --> ctrl+c
2 运行的时候
在输入命令 uwsgi -d --ini uwsgi.ini
提前了解一下 lsof -i:端口
查看端口
6 阿里云配置
1 阿里云安全组配置 开放端口
❝添加端口 保存即可
❞
2 在centos8中开放防火墙
7 本地访问公网
❝比如你的公网ip:自定义的端口/path?参数 若排除都没问题 可以安装nginx 配置一个监听端口 测试一下
❞
作者:以罗伊
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。