使用Python(mod_wsgi)捕获Apache下PHP会话的内容?

时间:2009-10-02 13:53:45

标签: python apache mod-wsgi

有没有办法用$_SESSION['user_id'] Python脚本捕获PHP会话变量mod_wsgi的内容?我正在后台运行一个脚本来决定用户是否可以继续查看文档。

我想做这样的事情:

def allow_access(environ, host):
    allow_access = False

    if environ['SCRIPT_NAME'] == 'forbidden_dir':
        if session['user_id'] == '1':
            allow_access = True

    if allow_access:
        return True
    else:
        return False

有可能吗?

2 个答案:

答案 0 :(得分:3)

如果可能的话,这并不容易; apache以特殊格式将会话变量存储在文件中。

您最好的选择可能是编写一个打印所有会话变量的php页面。 (将其硬编码为仅用于localhost。)从python脚本中打开该页面的URL。使用会话信息向URL请求添加标头。然后,一旦在Python中加载php页面,就解析输入。

答案 1 :(得分:2)

请不要这样做:

if allow_access:
    return True
else:
    return False

当你能做到:return allow_access