ich mod_python, wie dies für meinen eigenen benutzerdefinierten Authentifizierungsmechanismus verwenden, um übergeben:Wie Informationen von mod_python zu CGI-Skripten
# apache/conf/conf.d/mod_python.conf
<Directory some/path>
PythonAccessHandler myhandler::myhandler
Options +ExecCGI
AddHandler cgi-script .cgi
</Directory>
-
# myhandler.py
from mod_python import apache
def myhandler(req):
if check(req):
return apache.DECLINED
else:
return apache.HTTP_UNAUTHORIZED
def check(req):
from random import random
return random() >= 0.5
und möchte einig CGI-Skripte, die sein wird, ausgeführt, wenn myhandler ablehnt.
#!/bin/bash
# test.cgi
echo Content-type: text/plain
echo
echo "Hello!"
Diese Konfiguration funktioniert gut, aber zusätzlich dazu, würde Ich mag sevral Informationen von mod_python auf den CGI-Skripte wie dies nur passieren:
# myhandler.py
def myhandler(req):
if check(req):
import sys
req.subprocess_env['python_version'] = repr(sys.version_info)
return apache.DECLINED
else:
return apache.HTTP_UNAUTHORIZED
-
#!/bin/bash
# test2.cgi
echo Content-type: text/plain
echo
echo "python version = $python_version"
Diese Konfiguration funktioniert jedoch nicht. Die an reqprocess_env übergebenen Werte werden in den CGI-Skripten verworfen.
Gibt es eine Möglichkeit, Informationen von mod_python zu CGI-Skript zu übergeben?
Jede Hilfe wäre willkommen.