Flask报错解决方案:WARNING: This is a development server. Do not use it in a production deployment. falsk

轩辕啸
2023-12-01
WARNING: This is a development server. Do not use it in a production deployment.
 falsk WSGI

翻译:这是一个开发服务器。不要在生产部署中使用它。请改用生产WSGI服务器
这一个问题困扰好久,在windows中的pycharm尝试网上2种方法均为无效

  • 方法一:无效
from gevent import pywsgi
 
if __name__ == '__main__':
    server = pywsgi.WSGIServer(('0.0.0.0', 5000), app)
    server.serve_forever()
  • 方法二:无效
from wsgiref.simple_server import make_server
 
if __name__ == '__main__':
    server = make_server('', 64570, app)
    server.serve_forever()

解决方案:虚拟环境

  • 从Python Flask 角度出发,虚拟环境的建立是很有必要的。因为我们知道Flask都是一件件扩展装备装起来的,当打不同的BOSS的时候(对应不同的WEB应用开发),我们的Flask就需要配备不同的武器装备了。在给Flask买装备时,我们就会发现一个问题,如果我们不断地直接给Flask买装备然后装上(这里指在Python源环境中install扩展),那么Python Flask源必然会难以负载且不便管理,这就相当于打大BOSS时候你让Flask把所有武器都带上,很容易想到这是多累。在这时候就需要一个装备仓库了,其中分BOSS类别放了不同的武器包,打什么BOSS就带什么,光看着就知道这样我们的Flask压力会减少很多。这个装备仓库就是我们的系统环境,而不同的武器包则对应不同的虚拟环境,在不同应用开发中对Flask进行不同的扩展,这可减小WEB开发负担,也可简便对开发的管理,且虚拟环境的使用能够帮助开发者灵活地使用不同开发环境,有针对性地使用项目资源。

本地创建虚拟环境

创建虚拟环境的方法有多种,所依赖的包也有很多,其中利用virtualenv库来创建虚拟环境较为简便,在此以其为例,作相关介绍。

  1. 第一步——使用pip安装virtualenv库

pip install virtualenv

安装完后可通过查看版本来确认是否成功安装,若正常显示版本号则安装成功

virtualenv --version

  1. 第二步——在相应项目文件夹中安装虚拟环境

例如,先创建了项目文件夹flaskproject,然后进入目录,直接执行安装命令,其中第三行venv为虚拟环境的名称,一般习惯取为‘venv’

mkdir flaskproject
cd flaskproject
virtualenv venv
之后等待其完成安装即可

New python executable in venv/bin/python
Installing distribute…done.

使用方法

安装虚拟环境完毕后,就会在相应的文件目录下生成一个虚拟环境文件夹(如上操作则产生文件夹venv)。如需进入虚拟环境,只需要使用相应的激活命令即可

venv\scripts\activate

激活后便可使用虚拟环境来安装Flask和为其添加装备(激活后可视其为本机系统一样使用,且其中的python环境与本机python环境完全独立,互不干扰,即所有通过pip安装的都只会存放在本虚拟环境中,这对于不同的应用管理是很有帮助的)

pip install flask

当不再想使用虚拟环境而想重返本机全局python环境中,一种果断迅猛的方法是直接关闭DOS窗口。当然此外也可以使用一种稍显优雅的方式来注销激活(直接在项目文件夹命令行输入命令)

deactivate

 类似资料: