Получить IP из запроса file_get_contents - PullRequest
2 голосов
/ 16 апреля 2011

У меня есть две страницы, одна из которых отправляет запрос file_get_contents:

$postdata = http_build_query( array('install' => 'true', 'url' => $_SERVER['SERVER_NAME'], 'key' => 'XXXXXXXXXXXX') );

$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);

$context  = stream_context_create($opts);
$registration_key = file_get_contents('http://example.com/register.php', false, $context);

И страница, которая принимает вызов (http://example.com/register.php), и я пытаюсь получить IP-адрес, с которого поступил запросбезрезультатно. Я пробовал:

$_SERVER['HTTP_CLIENT_IP']

$_SERVER['HTTP_VIA']

$_SERVER['HTTP_X_FORWARDED_FOR']

$_SERVER['REMOTE_ADDR'] (IP, ноне IP-адрес компьютера, отправляющего ИЛИ принимающего запрос)

Есть идеи, где можно найти дополнительную информацию о компьютере, отправляющем запрос?

Заранее спасибо!

1 Ответ

4 голосов
/ 16 апреля 2011

Только если вы передадите IP в запросе:

$registration_key = file_get_contents('http://example.com/register.php?ip='.$_SERVER['REMOTE_ADDR'], false, $context);
...