"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 프록시가 사용 중일 때 실제 방문자 IP 주소를 얻는 방법은 무엇입니까?

프록시가 사용 중일 때 실제 방문자 IP 주소를 얻는 방법은 무엇입니까?

2024-11-09에 게시됨
검색:281

How to Get the Real Visitor IP Address When Proxies Are in Use?

프록시 사용에도 불구하고 실제 방문자 IP 주소 검색

방문자의 IP 주소를 얻는 데 일반적으로 사용되는 PHP 코드는 다음과 같습니다.

그러나 이 방법은 프록시가 작동 중일 때 실제 IP를 캡처하지 못합니다. 이 문제에 대한 해결책을 찾기 위해 대체 접근 방식을 살펴보겠습니다.

IP 결정을 위한 사용자 정의 PHP 함수

제공된 PHP 코드는 CloudFlare 연결을 고려한 포괄적인 솔루션을 제공합니다. 기타 다양한 요소:

function getUserIP()
{
    // Handle CloudFlare connections
    if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
          $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
          $_SERVER['HTTP_CLIENT_IP'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
    }
    $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();

이 코드는 $user_ip 변수에 IP 주소를 할당하며, 이 변수는 PHP 스크립트 내에서 필요에 따라 활용될 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3