使用uWSGI和Nginx怎么部署一个Flask项目

这篇文章将为大家详细讲解有关使用uWSGI和Nginx怎么部署一个Flask项目,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

uWSGI

在部署之前,我们得先了解几个概念

  • wsgi web应用程序之间的接口。它的作用就像是桥梁,连接在web服务器和web应用框架之间。

  • uwsgi 是一种传输协议,用于定义传输信息的类型。

  • uWSGI 是实现了uwsgi协议WSGI的web服务器。

部署

首先准备一个flask程序,名字run.py

fromflaskimportFlask

app=Flask(__name__)

@app.route("/")
defindex():
return'部署'

if__name__=='__main__':
app.run()

安装uWSGI

pipinstalluwsgi

在项目的目录创建一个uwsgi的配置文件

[uwsgi]
#配合nginx使用
socket=127.0.0.1:8000
#项目路径/Users/xiaoyuan/Desktop/flask_test
chdir=自己项目路径
#wsgi文件run就是flask启动文件去掉后缀名app是run.py里面的Flask对象
module=run:app
#指定工作进程
processes=4
#主进程
master=true
#每个工作进程有2个线程
threads=2
#指的后台启动日志输出的地方
daemonize=uwsgi.log
#保存主进程的进程号
pidfile=uwsgi.pid
#虚拟环境环境路径
virtualenv=/Users/xiaoyuan/.virtualenvs/flask_test

然后配置Nginx,找到Nginx的配置文件nginx.conf,在http块下加上下面代码

server{
#监听端口
listen80;
#监听ip换成服务器公网IP
server_name127.0.0.1;

#动态请求
location/{
includeuwsgi_params;
uwsgi_pass127.0.0.1:8000;
}
#静态请求
location/static{
alias/Users/xiaoyuan/Desktop/flask_test/static;

}
}

启动

启动uWSGI

uwsgi--iniuwsgi.ini

启动Nginx

/etc/init.d/nginxstart

然后访问Nginx监听的IP,由于我在本地部署,就直接访问http://127.0.0.1:80/

使用uWSGI和Nginx怎么部署一个Flask项目

其他命令

uwsgi重启

uwsgi--reloaduwsgi.pid

uwsgi停止

uwsgi--stopuwsgi.pid

关于使用uWSGI和Nginx怎么部署一个Flask项目就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

发布于 2021-04-15 01:56:13
收藏
分享
海报
0 条评论
185
上一篇:使用C#怎么比较类型 下一篇:使用Node.js怎么实现一个HTTP服务器
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码