相关疑难解决方法(0)

与Flask捆绑在一起的服务器是否可以安全地用于生产?

与Flask捆绑在一起的服务器是否可以安全地在生产环境中进行部署?如果没有,我应该使用什么来在生产中部署Flask?

python werkzeug flask

59
推荐指数
2
解决办法
5万
查看次数

如何在flask应用程序的同一页面上发布输出结果?

我有一个 Flask 应用程序,它接受一些文本作为输入,运行一个 python 脚本并在同一个 html 页面上输出一个输出,除非它转到一个新页面。我不明白为什么它会转到一个新页面。

这是我的 app.py 文件:

#!/usr/bin/env python3

from flask import *
from flask import render_template
from myclass import myfunction

app = Flask(__name__)

@app.route('/')
def homepage():
    return render_template('index.html')

@app.route('/', methods= ["POST"])
def background_process():
    if request.method == 'POST':
        try:
            story = request.form.get('story')
            if story:
                result = myfunction(story)
                return render_template('index.html', **jsonify(result))
            else:
                return jsonify(result='Input needed')
        except Exception as e:
            return (str(e))

if __name__ == "__main__":
    app.debug=True
    app.run()
Run Code Online (Sandbox Code Playgroud)

这是我的 index.html 文件:

 <!DOCTYPE html>
<html>
    <head>
        <link rel="stylesheet" href="../static/main.css">
        <script …
Run Code Online (Sandbox Code Playgroud)

html python jquery flask

5
推荐指数
1
解决办法
8183
查看次数

在 Flask 部署中使用 Web 服务器有什么用?

注意:该问题已作为重复结束,但不是(两个问题)。我在 Web 模式下专门描述了一个应用程序,然后在 WSGI 模式下 - 我毫不怀疑何时使用哪个(两个链接的问题都解决了这一点)。我还解释说,我很清楚 Web 服务器的用途。接受的答案很好地总结了这一点,并回答了 Web 服务器是否是运行 prod flask 应用程序的必要条件(不是)的问题。

我有一个flask应用程序。具有所有限制的开发版本是

import flask

app = flask.Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

app.run()
Run Code Online (Sandbox Code Playgroud)

当我想将它转移到生产,我用的gevent按照部署文档

import gevent.monkey
gevent.monkey.patch_all()
import flask
import gevent.wsgi

app = flask.Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

gevent.wsgi.WSGIServer(('127.0.0.1', 5000), app).serve_forever()
Run Code Online (Sandbox Code Playgroud)

两种情况都有效,第一种情况偶尔会出现问题(由于其性质,这并不意外)。

然后,我在这里和那里阅读的很多信息都提到,用于flask应用程序生产部署的第三个组件是 Web 服务器(Apache、nginx)。它对支持 WSGI 的 Flask 应用程序的实际用途是什么?

具体来说,我想了解它是否对flask应用程序的性能/稳定性有实际影响。

我知道网络服务器的各种用途是什么(身份验证、反向代理、白名单、重写、负载管理等等)。我的问题特别是关于网络服务器为烧瓶 WSGI 应用程序(如果有的话)提供什么。

python gevent flask python-3.x

3
推荐指数
1
解决办法
1704
查看次数

在生产服务器下运行的Flask应用程序仍然是Flask应用程序吗?

根据Flask的文档

您可以在开发过程中使用内置服务器,但应该对生产应用程序使用完整的部署选项。

假设我正在使用mod_wsgi

Flask是仍然在“幕后”运行,Apache还是委托Flask运行?根据此SO,Flask的明显限制之一是它是单线程的。如果Apache仅委托给Flask,我们是否会遇到同样的问题?如果不是,Flask到底有什么用?是什么使它成为“ Flask应用程序”?换句话说,在Apache服务器下运行的生产Flask应用程序真的是Flask应用程序吗?如果是,为什么?

apache flask server

2
推荐指数
1
解决办法
596
查看次数

标签 统计

flask ×4

python ×3

apache ×1

gevent ×1

html ×1

jquery ×1

python-3.x ×1

server ×1

werkzeug ×1