centos+flask+uwsgi+nginx 的搭建

使用 Centos7部署 flask的项目遇到了很多的问题,这里做一下记录:

1.安装uwsgi : pip install uwsgi
注意:centos7默认的pyhon版本是2.7 ,我的服务器上安装使用的版本是3.6,后面会遇到问题,及解决办法。

2.uwsgi配置:
这里写图片描述
如果在访问路由时遇到:
这里写图片描述
这个问题那么就在 uwsgi的配置文件里添加: **

plugins = python

**

3.nginx 配置:
这里写图片描述
这里注意: nginx配置中的 : uwsgi_pass数据必须和 uwsgi配置文件中的socket一样!!!

遇到的问题及解决办法:

问题1: 访问路由时报错为:

no python application found, check your startup logs for errors

解决办法: 在flask项目中添加一句:
这里写图片描述

问题2:我已经使用pip install flask的库,但是依然报错:
这里写图片描述
报错的信息大概的意思是没有找到flask模块,原因是:centos默认的uwsgi默认使用的是python2.7的版本,但是我之前已经将pip转为python3.6版本下的了,所以当我执行pip install flask时其实是安装在python3.6文件夹下了,所以解决办法:

添加uwsgi的软连接到 /usr/bin/uwsgi3

执行: ln -s /usr/local/python3.6/bin/python3/uwsgi /usr/bin/uwsgi3

然后在执行uwsgi配置文件的使用执行:uwsgi3 --ini config.ini

项目成功跑起来之后需要将项目添加为系统服务:

1.vim /etc/systemd/system/send.service
2.
[Unit]
Description=uWSGI instance to serve send project
After=network.target
[Service]
WorkingDirectory=/send
Environment=FLASKR_SETTINGS=/send/env.cfg
ExecStart=/usr/bin/uwsgi3 –ini /send/config.ini
[Install]
WantedBy=multi-user.target

**WorkingDirectory:项目的路径
ExecStart:服务启动的代码,这里是启动uwsgi
WantedBy=multi-user.target:指明会跟随系统的启动而启动**
最后启动:systemctl start send

最后经过努力终于部署成功了,ps:我特么是一个php的程序员!!!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值