带有网络服务器的Flask打破了所有会话?

Ble*_*der 4 python session lighttpd flask

例如,这段代码:

from flask import session

@app.route('/is_logged_in/')
def is_logged_in():
  return 'user' in session
Run Code Online (Sandbox Code Playgroud)

它运行瓶的开发服务器时运行对我很好,但它抛出一个500错误与任何网络服务器设置(FastCGI的,uWSGI等)的任何服务器(Apache时,Nginx的,lighttpd的)上.

谁知道为什么?


我的实际代码是在GitHub上,如果重要的话.

在使用Flask的内部服务器运行时,它可以完美运行,但是我无法使用任何会话变量来使用生产网络服务器:https://github.com/Blender3D/Webminal/blob/master/server.py

Ble*_*der 14

我终于尝试了Tornado,认为这会对我的问题有所帮助(毕竟它是用Python编写的).

瞧,一个可读的追溯:

RuntimeError: the session is unavailable because no secret key was set.
Set the secret_key on the application to something unique and secret.
Run Code Online (Sandbox Code Playgroud)

看起来我只是忘了添加一个密钥来签署会话:

app.secret_key = 'why would I tell you my secret key?'
Run Code Online (Sandbox Code Playgroud)