当前位置:首页 » 《关注互联网》 » 正文

python flask项目部署上线之Gunicorn和Nginx的准备_sherlockjjobs的博客

12 人参与  2021年08月16日 11:03  分类 : 《关注互联网》  评论

点击全文阅读


python flask项目部署上线之Gunicorn和Nginx的准备

1. Gunicorn

进入虚拟环境之后
pipenv install gunicorn

运行:
gunicorn --workers=4 wsgi:app 需要创建一个wsgi.py
指定主机:
gunicorn --workers=4 --bind=0.0.0.0:8000 wsgi:app
或者
gunicorn -w 4 -b 0.0.0.0:8000 wsgi:app

2. Nginx

sudo apt-get install nginx

Nginx作为代理服务器,监听来自外部的80端口的请求,Gunicorn负责监听本地的8000端口的请求

配置如下:
sudo rm /etc/nginx/sites-enabled/default
sudo vi /etc/nginx/sites-enabled/项目名

输入内容如下:

server {
    listen 80 default_server;
    server_name _; #可以输入域名,也可以不用
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_redirect off;

        proxy_set_header Host            $host;
        proxy_set_header X-Real_IP       $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    location /static {
        alias 放置静态文件的相对位置;
        expires 30d;
    }
}

配置完之后,检测语法正确性:
sudo nginx -t

最终运行:
sudo service nginx restart
gunicorn -w 4 wsgi:app

-w 4是指线程数,一般设为4~12个,建议为(2XCPU 核心数) + 1


点击全文阅读


本文链接:http://zhangshiyu.com/post/25498.html

监听  端口  请求  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1