[Release] Взимане на истинския IP адрес ако се използва proxy

leeway

New Member
Joined
Jan 24, 2009
Messages
512
Reaction score
43
С този код ще можете да взимате реалните IP-та на потребителите, които посещават вашия сайт или сайтове. Според мен няма нужда от обяснения, за това не съм сложил.

PHP:
<?php
function getip()
{
if(isset($_SERVER))
{
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$realip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
elseif(isset($_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
$realip = $_SERVER['REMOTE_ADDR'];
}
}
else
{
if(getenv('HTTP_X_FORWARDED_FOR'))
{
$realip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif(getenv('HTTP_CLIENT_IP'))
{
$realip = getenv('HTTP_CLIENT_IP');
}
else
{
$realip = getenv('REMOTE_ADDR');
}
}
return $realip;
}
echo getip();
?>
Credits:Web-Tourist And Me :)
 
Last edited:
http://www.sitepoint.com/forums//showthread.php?t=135217

Ако трябва да сме честни, от къде идва.. и $_SERVER е предефиниран вграден масив във пхп ядрото .. защо ти е да го проверяваш дали съществува.. същото нещо може да се напише с 3 реда... getenv си играе да хване наново същите неща => става по бавно...същото нещо е направено със $_SERVER при стартиране на заявката...

kh ;\

edit: личен опит... това може и да бъде лесно избегнато, тъй като променливите използвани се изпращат от клиента като Header на http GET заявката, което ще подскаже, че могат да се прескочат ...
 
Last edited:
$ip = $_SERVER['REMOTE_ADDR'];
echo "$ip"
 
И колко спира прокситата знаете ли (rofl)
 
И колко спира прокситата знаете ли (rofl)
Не ги спира? "Взимане на истинския IP адрес ако се използва proxy"
 
С ИП нестава, аз друг начин си намерих (rock)(rock)
 
даи някво обяснение каде се слага и за какво служи
 
даи някво обяснение каде се слага и за какво служи

1. Например в индекса, Някъде пишеш: Здравей, ип-то ти е <? echo getip(); ?>.
2. Смятам, че заглавието го обяснява много добре.
 
Пробвах с newipnow и hidemyass, но не работи. :)
 
а ако мина през 2 и повече проксита.. ?