请自行安装好nginx、gunicorn和flask的运行环境,这里不再赘述

Nginx配置

修改nginx的配置

vi /etc/nginx/sites-available/default

//default
server {
listen 80;//监听80端口
server_name www.ikiyomi.cc;
access_log /root/web/logs/nginx_app.log; //转发第一个app的请求
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header host $http_host;
proxy_pass http://127.0.0.1:5000;
} //转发第二个app的请求
location /weixin {
proxy_pass http://127.0.0.1:5001;
}
}

测试配置文件是否产生错误

nginx -t

开启服务

service nginx start

Flask app配置

将两个app运行的端口与nginx定义的端口一致,本地运行

//app_1
if __name__ == '__main__':
app.run(debug=False, port=5000)
# 127.0.0.1:5000 //app_2
if __name__ == '__main__':
app.run(debug=False, port=5001)
# 127.0.0.1:5001

Gunicorn配置

Gunicorn配置文件

//gunicorn_app1.conf
//配置方式相似,以app_1为例
# 绑定5000端口,与Flask端口一致
bind = "127.0.0.1:5000"
# 线程数
workers = 3
backlog = 2048
worker_class = "gevent"
# debug = True
proc_name = "gunicorn.pid"
pidfile = "/tmp/gunicorn.pid"
# logfile = "/root/wechat/logs/20161019.log"
accesslog = "/root/wechat_web/logs/gunicorn.log"
loglevel = "debug"
# 是否以守护进程方式运行
daemon = True

运行Gunicorn

gunicorn -c gunicorn_app1.conf app_1:app

参数说明:

  • -c 以配置文件方式运行
  • app_1 文件名
  • app app名

查看gunicorn守护进程是否运行

ps aux | grep gunicorn

作者:ioiogoo
链接:https://www.jianshu.com/p/040b9446acd2
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Flask+Gunicorn+Nginx配置多个app的更多相关文章

  1. 基于flask+gunicorn+nginx来部署web App

    基于flask+gunicorn&&nginx来部署web App WSGI协议 Web框架致力于如何生成HTML代码,而Web服务器用于处理和响应HTTP请求.Web框架和Web服务 ...

  2. 【新手向】阿里云上ubuntu+flask+gunicorn+nginx服务器部署(二)项目部署

    本项目实现的是类似于ins的图片分享网站.继续(一),当nginx的配置已修改好后,要在远程服务器上部署网站,只需要几个步骤: 1 前期准备 2 将运行网站的代码从github上下载过来 3 下载依赖 ...

  3. gunicorn+nginx配置方法

    对于gunicorn+nginx的配置,理解他们之间的关系很重要,以及最后如何确认配置结果是正确的也很重要 nginx 配置文件: 修改这个配置文件有3个用处: 假设服务器本身的Ip是A称为ip-A, ...

  4. flask+gunicorn+nginx部署

    安装nginx和gunicorn yum install nginx pip3 install gunicorn flask项目配置 #main.py from flask import Flask ...

  5. 【flask】使用配置类管理app测试环境-demo版

    如果对app.config是什么还心有疑惑,或者对于这种配置方式很陌生,参考:flask项目配置 app.config classConfig.py: class BaseConfig(object) ...

  6. Windows + Python + flup + flask + fastcgi + Nginx配置

    Nginx配置 # HTTPS server { listen ssl; server_name kvaccount.xx.io; ssl_certificate "C:/xx/conf/s ...

  7. Flask + Gunicorn + Nginx 部署

    最近很多朋友都在问我关于 Flask 部署的问题,说实在的我很乐意看到和回答这样的问题,至少证明了越来越多人开始用 Flask 了. 之前我曾发表过一篇在 Ubuntu 上用 uwsgi + ngin ...

  8. python web开发c6——阿里云上ubuntu+flask+gunicorn+nginx服务器部署(一)简单测试

    简述 Nginx在服务器部署中的作用 请求通过Nginx实现反向代理,将请求提交给代理服务器.本文中只用了一台服务器,所以是代理到本机. gunicorn的作用 作为服务器代码的容器.接收Nginx的 ...

  9. Ubuntu | Flask + Gunicorn + Nginx 部署服务器环境

    现在我们手里有一个准备发布的项目,那么如何将他上传到你的服务器,并让外网访问呢? 前提: 1. 安装了Python环境 apt-get install python-dev 2. 安装Flask pi ...

  10. Centeos7部署Flask+Gunicorn+nginx

    一.环境安装 pip3 install flask pip3 install gunicorn pip3 install nginx 二.模块介绍 1.Flask是一个使用 Python 编写的轻量级 ...

随机推荐

  1. Jmeter、Postman之RSA加密登录接口测试

    方法1:直接用在线加密工具进行加密,得到密码 参考地址 https://www.toolscat.com/decode/rsa 输入公钥和密码,直接加密即可   方法2:postman工具 步骤1:接 ...

  2. 在CentOS下安装nginx+php环境

    一.nginx 安装 1. 在nginx官网下载nginx源码 提供一个nginx官网下载地址: http://nginx.org/download/nginx-1.12.2.tar.gz 注意:请先 ...

  3. 格式化 ceph osd 盘报错stderr: wipefs: error: /dev/sdc: probing initialization failed: Device or resource busy

    1.格式化 ceph集群osd盘 出现设备繁忙,只能手动清空磁盘并重启 格式化:ceph-volume lvm zap /dev/sdc dd 手动清空磁盘:dd if=/dev/zero of=/d ...

  4. PVE联网及更换国内源

    一.PVE联网 第一次安装PVE,正常情况下PVE的IP是在我们上网的网段的.没有网络有可能是没有配置DNS服务器地址或DNS地址是软路由网关地址.解决方法有3种: 1:设置DHCP自动获取网络地址和 ...

  5. 2003031118—李伟—Python数据分析第七周作业—MySQL的安装以及使用

    项目    MySQL的安装以及使用 课程班级博客链接 20级数据班(本) 这个作业要求链接 作业要求 博客名称 2003031118-李伟-Python数据分析第七周作业-MySQL的安装以及使用 ...

  6. springboot项目控制台日志不是彩色的原因

    采用springboot的方式启动,而不是application的方式启动,即可

  7. [Leetcode 559]N叉树的最大深度Maximum Depth of N-ary Tree DFS/BFS模板

    题目 https://leetcode.com/problems/maximum-depth-of-n-ary-tree/ N叉树的最大深度 Given a n-ary tree, find its ...

  8. 一次CentOS 出现“Too many open files"错误的解决

    一.原因分析 出现本问题,应该是打开文件最多数量不足,默认是1024个,在生产环境中经常出现该问题. 使用ulimit -a 查看打开文件数量限制 二.解决方案A(临时有效) 1.如果是非root用户 ...

  9. [C#]索引指示器

    参考代码: using System; namespace IndexerDemo { class StuInfo { public string Name; public string[] CouN ...

  10. QT网络编程【二】【Socket】

    1.QT中添加socket 库的相关操作 2.正常c++11 VS2019使用socket库的操作 3.winsock2 与 sys/socket.h的区别? 4.WinSock2 的基本操作? 详细 ...