Potrzebuję sobie zrobić detekcję proxy i mam taką możliwość, gdyż z niektórymi moimi stronami użytkownicy łączą się właśnie w taki sposób. O ile pobranie adresu IP nie stanowi problemu, to niestety ale nie mam pojęcia jak wykryć port proxy.
Na razie mam coś takiego :
KOD
if ($user_ip!==$_SERVER['REMOTE_ADDR'])
{
$szukproxy=fopen("serwery-proxy.txt","a+");
$dozapisu=$_SERVER['REMOTE_ADDR'].":".$_SERVER['SERVER_PORT'];
fwrite($szukproxy,$dozapisu."\r\n");
fclose($szukproxy);
}
{
$szukproxy=fopen("serwery-proxy.txt","a+");
$dozapisu=$_SERVER['REMOTE_ADDR'].":".$_SERVER['SERVER_PORT'];
fwrite($szukproxy,$dozapisu."\r\n");
fclose($szukproxy);
}
gdzie :
$user_ip - prawdziwy adres użytkownika (za proxy)
Problem stanowi $_SERVER['SERVER_PORT'], gdyż za każdym razem będzie to port 80 (to chyba jest oczywiste). Jednak przy sprawdzeniu aktywności serwerów, tylko część znajdzie mi jako aktywne, ponieważ pozostałe wymagają innego portu niż 80, by połączyć się z proxy.
Pozostaje więc pytanie, czy jakaś funkcja PHP pozwala na pobranie (znalezienie) tego portu, czy też będę musiał dla każdego IP sprawdzać najczęściej występujące porty ?
