1

出于某种原因,web.py 似乎无法记住我的会话。它适用于内置的网络服务器,但是当我将我的应用程序与 WSGI 一起使用时,不会记住会话。

我检查了磁盘存储会话文件夹,并且正在创建文件。似乎它不“记住”这些会话。

我的代码中有这个:

app = web.application(urls, globals(), autoreload=False)
application = app.wsgifunc()
curdir = os.path.dirname(__file__)
session = web.session.Session(
    app, web.session.DiskStore(os.path.join(curdir, 'sessions')), 
    { 'name': None, 'uid': 0, 'logged_in': False, 
      'username': None, 'password': None})

当我执行这部分登录时,它会很好地重定向到/account内置网络服务器(我的 post 方法检查登录,然后将 logged_in 设置为True),但在 wsgi 中它只是再次返回登录屏幕:

def GET(self):
    if session.logged_in != True:
        return self.getLoginScreen()
    else:
        raise web.seeother('/account')

在 Ubuntu 12.04 上使用 Apache2 运行 WSGI。我的 apache2 错误日志是空的。

4

0 回答 0