방문자 실제 사용하는 IP(Real IP) 구하기 > 기술자료 | 해피정닷컴

방문자 실제 사용하는 IP(Real IP) 구하기 > 기술자료

본문 바로가기

사이트 내 전체검색

방문자 실제 사용하는 IP(Real IP) 구하기 > 기술자료

PHP 방문자 실제 사용하는 IP(Real IP) 구하기

페이지 정보


본문

<?php
// 방법1
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
    $ip1 = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $ip1 = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
    $ip1 = $_SERVER['REMOTE_ADDR'];
}


// 방법2
$ip2 = $_SERVER['HTTP_CLIENT_IP']?$_SERVER['HTTP_CLIENT_IP']:($_SERVER['HTTP_X_FORWARDED_FOR']?$_SERVER['HTTP_X_FORWARDED_FOR']:$_SERVER['REMOTE_ADDR']);


// 방법3. isset을 사용하여 통지를 제거한 코드
$ip3 = isset($_SERVER['HTTP_CLIENT_IP'])?$_SERVER['HTTP_CLIENT_IP']:isset($_SERVER['HTTP_X_FORWARDED_FOR'])?$_SERVER['HTTP_X_FORWARDED_FOR']:$_SERVER['REMOTE_ADDR'];


// 방법4
function getUserIP()
{
    // Get real visitor IP behind CloudFlare network
    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;
}
$ip4 = getUserIP();


echo "코드1 = ". $ip1."<br><br>";
echo "코드2 = ". $ip2."<br><br>";
echo "코드3 = ". $ip3."<br><br>";
echo "코드4 = ". $ip4."<br><br>";
?>


데모 : https://www.happyjung.com/demo/php/x-real_ip.php


참고자료
https://code.i-harness.com/ko-kr/q/2dd309
https://stackoverflow.com/questions/13646690/how-to-get-real-ip-from-visitor
 

댓글목록

등록된 댓글이 없습니다.


Total 2,640건 17 페이지
  • RSS
기술자료 목록
2320
그누보드   7030  2019-02-08 16:47 ~ 2019-02-08 16:54  
2319
그누보드   7701  2019-01-31 18:45 ~ 2020-10-06 19:03  
열람
PHP   7956  2019-01-31 18:26 ~ 2023-08-09 08:25  
2317
PHP   11556  2019-01-23 17:50 ~ 2021-08-26 15:58  
2316
PHP   8136  2019-01-23 15:38  
2315
etc보드   6548  2019-01-22 23:32  
2314
MySQL   8708  2019-01-22 00:43  
2313
Linux   7723  2019-01-21 15:38 ~ 2021-02-26 16:51  
2312
Linux   15808  2019-01-21 07:18 ~ 2020-03-31 00:18  
2311
그누보드   5702  2019-01-16 18:41 ~ 2019-01-17 19:01  
2310
etc쇼핑몰   5738  2019-01-15 04:30 ~ 2022-04-21 02:59  
2309
etc보드   5624  2019-01-15 04:26 ~ 2019-01-15 05:04  
2308
HTML   17208  2019-01-11 23:20 ~ 2019-01-11 23:24  
2307
그누보드   9513  2019-01-11 01:42 ~ 2019-01-11 01:43  
2306
호스팅   12705  2019-01-09 08:50  
2305
그누보드   7560  2019-01-01 23:07  
2304
그누보드   6787  2018-12-20 06:30 ~ 2019-01-25 09:25  
2303
WordPress   5859  2018-12-19 19:56 ~ 2018-12-19 20:42  
2302
그누보드   7985  2018-12-18 15:16  
2301
Editor   8689  2018-12-16 23:11 ~ 2021-06-03 14:44  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.