|
写了一个简单的测试页反映客户端的IP地址,如下:
<?php
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
?>
将该页面放在80端口用http访问可以正常显示出客户端ip,放在ssl端口下用https访问显示出的ip地址始终是回环地址
httpd.conf配子选项节选如下:
<VirtualHost _default_:1>
DocumentRoot "/ssl/www"
ServerName localhost
</VirtualHost>
Listen 80
#Listen 127.0.0.1:1
Listen 1
请问还有哪个地方需要做更改才能正确得到ip地址而不是回环地址? |
|