Flask项目之Centos uwsgi+nginx部署

Flask项目Nginx部署

首先我们需要准备服务器环境,这里暂时没有云主机,我们使用虚拟机进行部署,服务器系统采用Centos7。开始flask项目部署

一、项目环境部署并进行flask方式启动测试

1、Centos7安装python3.5环境
详情安装教程请访问Centos7 下安装python3及卸载

2、关闭防火墙及Selinux(仅测试使用,项目上线必须开启指定端口)
在这里插入图片描述
3、测试ip网络通信
在这里插入图片描述

4、windows 中导出flask沙箱环境安装包
在这里插入图片描述
5、将flask项目导入到Centos服务器下
在这里插入图片描述
在这里插入图片描述

6、根据之前导出的安装包package.txt进行服务器flask环境安装

pip3 install -r package.txt

在这里插入图片描述
在这里插入图片描述
7、启动flask自带的服务器,进行测试

python3 manage.py runserver --host 0.0.0.0

在这里插入图片描述
访问测试成功:
在这里插入图片描述

二、部署uwsgi+Nginx环境

1、安装uwsgi

pip3 install uwsgi

在这里插入图片描述
2、创建uwsgi软链接并测试

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

在这里插入图片描述
3、创建uwsgi配置文件目录script
在这里插入图片描述
4、创建并编写uwsgi.ini配置文件

#uwsgi.ini
[uwsgi]
socket = 10.10.21.130:5000 # uwsgi 启动时所使用的地址与端口
pythonpath = /opt/FlaskStudentBluePrint # flask项目目录
module = manage # 使用的模板
wsgi-file = /opt/FlaskStudentBluePrint/manage.py # 指定flask运行文件
callable = app # python 程序内用以启动的 application 变量名
processes = 4 # 4进程
threads = 2 # 2线程
daemonize = /opt/script/uwsgi.log # 指定uwsgi日志文件
buffer-size = 32768 # 指定uwsgi默认buffer,否则可能出现nvalid request block size: 4161 (max 4096)...skip

在这里插入图片描述
5、启动uwsgi查看测试效果,当前启动uwsgi不能直接访问,需部署nginx

uwsgi --ini uwsgi.ini

在这里插入图片描述
6、下载Nginx tar包

wget -c https://nginx.org/download/nginx-1.12.2.tar.gz

在这里插入图片描述
7、解压并进行编译安装配置

tar -zxvf nginx-1.12.2.tar.gz
./configure \

在这里插入图片描述
8、编译安装Nginx

make && make install

在这里插入图片描述
8、配置Nginx软链接

ln -s /usr/local/nginx/sbin/nginx  /usr/bin/nginx

在这里插入图片描述
9、启动Nginx,测试
在这里插入图片描述
在这里插入图片描述

三、配置Nginx服务器,启动flask项目

1、备份Nginx配置文件
在这里插入图片描述
2、打开配置文件,进行配置

server {
        listen       80;
        server_name  FlaskStudentBluePrint;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        access_log /opt/script/flask.log;
        error_log /opt/script/flaskError.log;

        location / {
            include uwsgi_params;# 导入uwsgi配置 
            uwsgi_pass 127.0.0.1:5000;# 转发端口,需要和uwsgi配置当中的监听端口一致

            uwsgi_param UWSGI_CHDIR /opt/FlaskStudentBluePrint;# 项目根目录
            uwsgi_param UWSGI_SCRIPT manage:app;# 项目的主程序,比如你测试用manage.py文件,文件中app = Flask(__name__),那么这里就填manage:app
        }

在这里插入图片描述
在这里插入图片描述

3、启动nginx和uwsgi,测试启动项目效果
在这里插入图片描述
测试成功:
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章