美文网首页
阿里云cent7+uwsgi+nginx+flask成功部署

阿里云cent7+uwsgi+nginx+flask成功部署

作者: 裂开的汤圆 | 来源:发表于2019-06-04 23:48 被阅读0次

部署了两天,踩了无数坑,终于搞定了。话不多说,直接上干货,这篇主要讲述配置文件如何配置

uwsgi配置flask项目

uwsgi可以通过两种方式启动

方式一(安装uwsgi成功后执行该命令):

uwsgi --socket 127.0.0.1:3031 --wsgi-file manage.py --callable app --processes 4 --threads 2 --stats 127.0.0.1:9191

方式二(创建xxx.ini文件,配置该文件然后执行):
可以通过"uwsgi xxx.ini"命令启动uwsgi

[uwsgi]
# uwsgi监听端口(小弟不才,这里也踩了一个坑,0.0.0.0代表的是监听公网,127.0.0.7代表监听本地。一开始我设置了127.0.0.1,然后想从公网访问,却一直失败,捣鼓了好久才知道是这里的问题)
socket = 0.0.0.0:8000

# 项目根目录
chdir = /home/xxx/Project                                         
# flask程序的启动文件
wsgi-file = manage.py

# 程序变量名
callable = app

# 进程数
processes = 4

# 线程数
threads = 2

# 状态检测地址
stats = 127.0.0.1:9191

nginx配置文件(在修改配置文件后得重启nginx)

在/etc/nginx/conf.d/下创建一个xxx.conf文件,在这个文件夹下创建的配置文件会被引用到/etc/nginx/nginx.conf中,原因是nginx.conf中使用了include语句,请看下图


这里写图片描述

配置内容如下:

server{
    listen 80;
    # 服务器公网IP
    server_name xx.xx.xx.xx;
    # 日志位置
    access_log /xxx/xxx.log;
    error_log /xxx/xxx.log;
    location / {
        include uwsgi_params;
        # 指向uwsgi所应用的内部地址,所有请求将转发给uwsgi处理
        uwsgi_pass 0.0.0.0:8000;
        # 指向虚拟环境(venv),注意是要python执行文件
        uwsgi_param UWSGI_PYHOME /home/Project/bin/python;
        # 网站根目录
        uwsgi_param UWSGI_CHDIR /home/Project/;
        # 启动程序
        uwsgi_param UWSGI_SCRIPT manage:app;
    }
}

如果你想从公网访问的话,需要在阿里云的安全组中添加80端口规则,不知道怎么设置的请百度

最后需要注意的地方是,nginx是最外层的代理,也就是说所有的请求会先通过nginx再到uwsgi,所以测试时请求的端口应该是nginx监听的端口,例如我这里nginx监听的端口是80

下面是一下会用到的命令

启动uwsgi: uwsgi xxx.ini
结束所有uwsgi进程: killall -9 uwsgi
启动nginx: service nginx start
重启nginx: service nginx restart(在修改配置文件后得重启nginx)
查询相关的进程运行情况:ps -ef|grep nginx

相关文章

  • 阿里云cent7+uwsgi+nginx+flask成功部署

    部署了两天,踩了无数坑,终于搞定了。话不多说,直接上干货,这篇主要讲述配置文件如何配置 uwsgi配置flask项...

  • Docker部署WEB 应用

    1、环境:阿里云服务器2、CentOS7系统3、Docker成功部署 这里前提docker 已经成功部署啦,现有有...

  • 阿里云服务器-docker部署 web 应用(端口号)

    Docker部署WEB 应用时,本地可以成功打开测试页,在公网上(阿里云服务器)却不能打开。 1、环境:阿里云服务...

  • 课程设计问题总结

    一些部署到阿里云的问题 一直在阿里云上部署项目,但是只是以ip:端口的形式去进行访问部署到阿里云的项目,个人觉得很...

  • 在阿里云ECS上部署meteor

    经过这两天的折腾,终于在阿里云上成功部署了meteor app。整理一下现在混乱的大脑。 在阿里云ubuntu 1...

  • Tomcat启动异常缓慢解决记录

    昨天部署一个项目的时候发现tomcat启动非常慢,要十几分钟才能启动成功,之前在腾讯云上部署都是正常的,但是阿里云...

  • 在阿里云部署 Flask 应用

    原文首发于CSDN,略有增删 在阿里云部署 Flask 应用 本文简单记录在阿里云部署 Flask 应用的过程。由...

  • nuxt 踩坑

    1. 部署到阿里云 无法通过 ip:端口 访问 npm build 好后部署到阿里云 centos服务器 curl...

  • swift web框架 Vapor 使用记录(三)

    阿里云vapor部署走起 上次双12,用新账户撸了个3年的阿里云服务器,决定就把服务器端部署在阿里云上。 1.安装...

  • Host key verification failed.

    bug描述:用阿里云服务器部署了一个项目,然后利用自己的电脑ssh远程联结成功,后来重置了阿里云的系统盘,再次用s...

网友评论

      本文标题:阿里云cent7+uwsgi+nginx+flask成功部署

      本文链接:https://www.haomeiwen.com/subject/mailtctx.html