打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用flask uwsgi supervised 使用虚拟python环境搭建网站

flask是个轻量级的网站框架,如果网站仅仅是几个简单的页面与功能接口的话,使用它比其他诸如django等框架要方便很多。然而当网站构建好后,需要部署到服务器,此时需要另外两个工具:用于让python与网站服务器相连的uwsgi,以及用于自动启动并守护的supervisor。

flask和uwsgi都支持python2和python3,但supervisor只支持python2,所以如果网站app一定要用python3的话则一定会出现他们装在不同的虚拟环境下。不过不怕,这是可以解决的。

笔者的网站app需要在anaconda3环境下(因为要用到很多科学库),虽然可以移植到python2,只是python3是趋势,anaconda也提供了太多的便利,所以就不折腾环境。

uwsgi与flask安装与配置

这两个我装在同一个环境下,命名为web

(web) $ pip install flask(web) $ pip install uwsgi

假设anaconda的目录是/home/user/anaconda3那么python的位置应该是/home/user/anaconda3/envs/web 这个很重要,因为不在这个环境下将没有uwsgi也无法启动flask。

假设网站的目录是

显然uwsgi.ini和superviosrd.conf就是配置文件,后者在下章介绍。

uwsgi的配置如下

如果使用logto要注意user用户是否有权利在/var/log/uwsgi下创建文件(包括文件夹是否存在)

更多uwsgi的配置可以看官方文档quick start以及Configuration。

这里 callable 就是 manage.py 文件中的 flask 对象,一般我们用 app,参考flask官方deomo。

supervisor 安装与配置

首先先看下supervisor如何配置

虽然设定了pythonhome这个环境变量,不过依然要些uwsgi的绝对路径,毕竟在

py2的环境下是没有uwsgi这个程序的。

安装supervisor需要切换到一个python2的环境,这里我依然是用anaconda添加虚拟环境

最后一行命令就是执行supervisor,(注意有个d)

好了,这样就全部运行好了,可以用http://localhost:8000看是否出现了hello world。

如果需要做端口映射之类的,可以再用nginx之类,或者直接就把uwsgi改为80端口也可以。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
python笔记
windows配置flask&&Pycharm运行第一个flask
Anaconda下conda,pip安装路径
部署 Flask 应用
Python基础篇-1-开发环境
从Python各种系统的安装开始教你到案例实战!Python入门很简单!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服