Reputation: 479
I'm a newbie in python. I want to write a simple web that prints the client ip on screen
my http.conf Handler: AddHandler mod_python .py PythonHandler mod_python.publisher PythonDebug On
The cgi.escape(os.environ["REMOTE_ADDR"]) return this error: KeyError: 'REMOTE_ADDR' and I just get lost with the BaseHTTPRequestHandler so what is the simple way to get the client ip? thank you.
Upvotes: 4
Views: 2931
Reputation: 23459
In case you're concerned about scalability, this might be a bit faster:
from mod_python import apache
req.get_remote_host(apache.REMOTE_NOLOOKUP)
Upvotes: 7
Reputation: 479
OK, I found the answer:
from mod_python import apache
def client_ip(req):
req.add_common_vars()
return req.subprocess_env['REMOTE_ADDR']
It's working!
Upvotes: 0