如何用Python(mod_wsgi)获取Apache下的PHP会话内容?
有没有办法在一个用 mod_wsgi
的 Python 脚本中获取 PHP 会话变量 $_SESSION['user_id']
的内容?我在后台运行一个脚本,用来判断用户是否可以继续查看文档。
我想做的事情大概是这样的:
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 个回答
3
请不要这样做:
if allow_access:
return True
else:
return False
你可以这样做:return allow_access
。
3
如果可以做到,那也不简单;Apache会把会话变量以一种特殊的格式存储在文件里。
你最好的办法可能是写一个PHP页面,专门用来打印所有的会话变量。(可以把它设置成只允许本地访问。)然后在你的Python脚本中打开这个页面的链接。记得在请求的链接中加上会话信息的头部。最后,当这个PHP页面在Python中加载完毕后,就可以解析里面的内容了。