【发布时间】:2014-12-19 10:19:43
【问题描述】:
我使用以下代码在 python 中创建了以下 Flask 应用程序(命名为 simpleflask.py):
from flask import Flask
import random
app = Flask(__name__)
app.secret_key = 'This is really unique and secret'
@app.route('/')
def index():
a = random.randrange(2)
if a == 1:
return "<p>the random number selector returned 1</p>"
else:
return "<p>the random number selector returned 0</p>"
if __name__ == "__main__":
app.run()
Flask 应用在我的个人电脑上运行良好。
然后我尝试使用Flask documentation 中提供的说明创建一个 .cgi 应用程序,其中包含以下代码:
from wsgiref.handlers import CGIHandler
from simpleflask import app
CGIHandler().run(app)
但是,它没有按预期工作。我不断收到以下错误消息:
KeyError: 'SERVER_NAME'
Status: 500 Internal Server Error
Content-Type: text/plain
Content-Length: 59
A server error occurred. Please contact the administrator.
我不太确定这应该是什么意思。知道为什么我会收到此错误吗?我必须进行哪些更改才能创建我的 .cgi 应用程序?欢迎提出任何建议。
【问题讨论】:
-
我不认为 .cgi 是要走的路。查看文档:flask.pocoo.org/docs/0.10/deploying。我会推荐 wsgi:flask.pocoo.org/docs/0.10/deploying/wsgi-standalone
-
@Paco 为什么你会推荐 wsgi 而不是 .cgi?
-
这与速度无关(正如问题所暗示的那样,但请阅读已接受的答案)stackoverflow.com/questions/1747266/…