@ZaurK

Как проверить, что скрипт выполняется через прокси под указанным ip?

Здравствуйте! На локальном сервере выполняется скрипт и в нем указываю выполнение через прокси
$ch = curl_init($url);  
	      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
              curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
              curl_setopt($ch, CURLOPT_PROXY, '41.242.90.3');
              curl_setopt($ch, CURLOPT_PROXYPORT, '80');
			  $page = curl_exec($ch);  
			  curl_close($ch); 
			  return $page;


Вопрос в том, как проверить, что и в самом деле скрипт выполняется через прокси под указанным ip?
  • Вопрос задан
  • 276 просмотров
Решения вопроса 1
DevMan
@DevMan
запросить любой сервис, возвращающий ip, и сравнить.
например, https://api.ipify.org
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
glebovgin
@glebovgin
Full Stack Web Developer
День добрый.

Сделать в $url какой-то свой адрес и отправить на него запрос.
А в файле по этому адресу написать определение IP, например

function getUserIP()
{
    $client  = @$_SERVER['HTTP_CLIENT_IP'];
    $forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
    $remote  = $_SERVER['REMOTE_ADDR'];

    if(filter_var($client, FILTER_VALIDATE_IP))
        $ip = $client;
    elseif(filter_var($forward, FILTER_VALIDATE_IP))
        $ip = $forward;
    else
        $ip = $remote;
    
    return $ip;
}

$user_ip = getUserIP();
echo $user_ip;


Таки образом в вашей переменной $page будет ответ с IP адресом.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
верните в $page нужный результат.
А вообще для избежания подмены контента (MiTM) - используйте SSL.
Ответ написан
Комментировать
@t38c3j
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы