python flask线上部署环境(liunx)

将python-flask部署到线上生产环境nginx+uwsgi(可以只部署到uwsgi),教程里面的步骤相对比较详细

浏览量:6878

配置uswgi

[uwsgi]
# 使用nginx的话注释
http sotck= :5000
# 端口号设置
http = 0.0.0.0:5000
# 项目路径设置 到项目主目录
chdir = /application/blog
# 项目启动文件 wsgi-file=app.py
# 项目需要调用的类 callable = app
# 进程线程设置
processes = 2
threads = 10
# 日志输出文件
daemonize = logs/uwsgi.log
# 虚拟环境地址
home = /anaconda3/envs/flask
# 运行pid
pidfile = uwsgi.pid
master = true

其他说明

/logs这个文件需要自己创建不然会出错

启动uwsgi

uwsgi --ini uwsgi.ini

后台运行 uwsgi -d --ini uwsgi.ini

停止uwsgi --stop uwsgi.pid

一定要启动

配置nginx

查询ngix位置 linux命令:whereis nginx

vi /etc/nginx/nginx.conf

upstream blog_flask{
     # 服务端地址
     server 0.0.0.0:5000;
}
server{
     # 访问端口
     listen 80;
     # 访问地址
     server_name www.kaixin.red;
     # 编码
     charset utf-8;
     client_max_body_size 75m;
     # 静态资源
     location /static/(.*){
          alias /application/blog/static/;
     }
     location / {
     # 服务端名称
          uwsgi_pass blog_flask;
          include /etc/nginx/uwsgi_params;
     }
}

查询是否有语法错误:nginx -t或 /usr/sbin/nginx -t

如果这样则为正确,否则会提示哪一行出错,更改即可

启动nginx

执行这一步之前一定要启动nginx

nginx或 /usr/sbin/nginx

停止:nginx -s stop

重启:nginx -s reload