flask项⽬+uwsgi+nginx部署
⽬录:
⼀、在linux系统安装python3.7环境
⼆、在linux系统导⼊项⽬
三、uwsgi安装部署
四、nginx安装部署
五、uwsgi+nginx启动项⽬
⼀、python3.7环境安装
CentOS7默认携带python2.7版本,但是现在⼤部分使⽤python3.7版本,所以要在服务器上搭建python2和python3共存环境。
1. 安装依赖包
yum install zlib-devel libffi-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc* make -y
2. 下载p ython3安装包
rz命令出错截图
解决:使⽤xshell⼯具连接并使⽤该命令
解决
导出模块
(2)linux环境下安装模块
pip3 install -r
image.png
2. 将项⽬导⼊到linux
(1)删除没有⽤的⽂件,如.idea、pycache
(2)修改端⼝号和主机,debug改为false
修改
(3)将项⽬压缩,导⼊到linux
(4)解压:unzip flask_OAsystem.zip
(5)启动项⽬: python3 main.py run
启动项⽬命令截图(6)Windows下访问测试
访问测试
注意:关闭linux系统的防⽕墙:
1. 查看防⽕墙的状态:systemctl status firewalld
2. 关闭防⽕墙:systemctl stop firewalld
3. 开启防⽕墙:systemctl start firewalld
4. 关闭开机启动:systemctl disable firewalld
5. 启⽤开机启动:systemctl enable firewalld
三、安装uwsgi模块
⽹站通常要运⾏在web服务器上,来接受浏览器的访问。python有⾃⼰的轻量级web服务器,就像上⾯测试⼀样,可以进⾏访问。但是这个服务器只适合在本地开发的时候使⽤,但是线上运⾏时要保证更⾼的性能和稳定性,所以需要使⽤uwsgi部署。
简单了解:uWSGI是⼀个web服务器,它实现了WSGI协议、uwsgi、http等协议。uwsgi协议是⼀个uWSGI服务器⾃有的协议,⽤于定义传输信息的类型。WSGI(Web Server Gateway Interface),是为python语⾔定义的Web服务器和Web应⽤程序框架之间的⼀种简单⽽通⽤的接⼝。是⼀个⽹关,在协议之间进⾏转换。
摘⾃-摩⼒克《uWSGI详解》
1. 下载uws g i 模块替换⾃带的服务模块
pip3 install uwsgi
2. 创建软连接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
四、Nginx
nginx部署前端项目前⾯已经⽤uwsgi服务器了来部署了,为什么还要再使⽤nginx呢?
1. 安全:不管什么请求都要经过代理服务器,这样就避免了外部程序直接攻击web服务器
2. 负载均衡:根据请求情况和服务器负载情况,将请求分配给不同的web服务器,保证服务器性能。
3. 提⾼web服务器的IO性能:nginx具备优秀的静态内容处理能⼒,然后将动态内容转发给uWSGI服务器,可以达
到很好的客户端响应。
1. 下载ng inx压缩包
2. 解压、编译和安装
(1)解压:tar -zxvf nginx-1.12.2
(2)编译:./cnfigure
(3)安装:make && make install
3. 创建软连接
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
4. 启动:
nginx:回车后没有任何反应,去windows下访问测试
5. 访问测试
启动成功
6. 停⽌ng inx:
nginx -s stop
五、uwsgi+nginx启动项⽬
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论