关注
Django+nginx+uwsgi前后端分离 阿里云linux系统部署

本人第一次进行项目部署,前前后后花了大约一周多时间,遇到了各种错误,才部署成功,特此记录,一是后来再部署可以减少许多错误,而是朋友们也可以借鉴,不足之处,多多包涵。
首先我们要大致弄懂nginx与uwsgi的原理和作用,否则非常抽象,配起来也是糊里糊涂。简单来说就是nginx接收http请求 nginx访问静态资源,把访问动态资源的要求转发给uwsgi服务器。具体点的讲解博客如下
nginx与uwsig
安装操作软件Xshell

1 查看阿里云安全组

把应该打开的端口打开,否则浏览器不能访问,常用的端口有8000 8001 6379 80 8002

2 安装必要软件

Mysql sudo apt-get install mysql-server mysql-client
安装后建立root用户 建立新数据库
由于我的新项目没有历史数据,所以不需要把历史数据上传

Redis 下载压缩包 解压后安装
启动redis redis-server redis.conf(在redis目录下)

3 安装nginx

安装博客如下
nginx安装
安装完毕一定要看是否安装成功,安装路径
命令 nginx -t
在这里插入图片描述
如果不出现这个 就是安装失败 需要看看自己哪里出现了错误
如果安装失败,删除nginx比较麻烦,可以查看下面的博客来进行删除
彻底删除nginx

4 安装虚拟环境

可以参考下列博客,简单有效
安装虚拟环境
启动虚拟环境 source /root/虚拟环境目录/bin/activate
安装pip3 django 以及项目所用的包
Pip install -r requirement
安装uwsgi,pip安装 安装在虚拟环境中
Sudo pip3 install uwsgi

5 配置好项目的setting文件,修改必要的ip地址,数据库配置等,把新建列的数据库连接上

数据库迁移(视自己的情况而定 ,我的数据库不需要任何数据现在) 删除文件下除了__init__.py之外的所有迁移记录的文件在这里插入图片描述
执行命令 python manage.py makemigrations
python mangae.py migrate 建表

6 启动项目试一下,在虚拟环境下启动

注意启动项目命令
python manage.py runserver 0.0.0.0:8002(端口自行设置)
~~

7配置nginx

在etc/nginx/conf.d路径下新建test1.conf文件
文件内容:
在这里插入图片描述
前端入库配置
在这里插入图片描述
静态文件位置:网址栏输入ip就是访问这里面的index.html文件
在这里插入图片描述
配置完输入命令 nginx -t 查看是否配置成功

8配置uwsgi

在项目目录下,也就是有manage.py文件的目录下,新建一个uwsgi.ini文件和一个run.log文件,然后编辑uwsgi.ini文件如下:
在这里插入图片描述
配置完启动uwsgi : uwsgi --ini uwsgi.ini

如果前面都成功,(当然那不太可能),重启nginx 启动虚拟环境 进入项目根目录,启动项目 应该就可以了
启动项目后 关闭与阿里云的连接后 项目保持运行的命令是
nohup python manage.py runserver 0.0.0.0:8002 &

以下是部署常用命令

mkvirtualenv:创建虚拟环境
mkdir: 创建文件夹

deactivate:退出虚拟环境
rmvirtualenv:删除虚拟环境

启动redis redis-server redis.conf
redis-cli -p 6379
查看redis是否启动 ps aux | grep redis-server

查看端口占用情况 netstat -apn | grep 端口号
杀死进程 kill -9 进程号
netstat -nultp #查看所有端口

启动 nginx
cd /usr/local/nginx/sbin
./nginx

#启动虚拟环境
source /root/qilunjilast/bin/activate

启动:uwsgi --ini uwsgi.ini
停止:uwsgi --stop uwsgi.pid
重启:uwsgi --reload uwsgi.pid

启动项目
1启动nginx nginx
2启动uwsgi 需要在服务器启动uwsgi服务 到uwsgi.ini的文件夹 用命令uwsgi --ini uwsgi.ini
3启动redis redis-server redis.conf
4启动项目 python manage.py runserver 0.0.0.0:8002

转载自CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/zhouxuan612/article/details/109579700

文章分类全栈

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--