我在网络服务器中有一小段 PHP 代码。 PHP 代码仅记录使用此行发出请求的人员的 IP:
$ip = !empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
echo 'Your IP is:'.$ip
我想在 Python 中创建一段代码,使用
HTTP_X_FORWARDED_FOR
标头强制网络服务器记录真实 IP 之外的其他 IP。我写了这段代码:
import urllib2,cookielib
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.addheaders = [('HTTP_X_FORWARDED_FOR','1.2.3.4'),]
resp=opener.open('http://example.com/logIP.php')
如果我在Python代码中设置了PHP代码,为什么它没有1.2.3.4?如何强制网络应用程序显示“假”IP?
标头应为 urllib (Python) 端的
X-Forwarded-For
。然后,您的网络服务器将其读取到您从 HTTP_X_FORWARDED_FOR
读取的 $_SERVER
环境变量中。
opener.addheaders = [('X-Forwarded-For','1.2.3.4'),]