บทความที่ 47 ตรวจสอบ IP Address จริง

Jan. 23, 2008

ในบางครั้งเราต้องการตรวจสอบคนที่เข้ามาใช้เวปเรา และโดยส่วนมาแล้วจะตรวจสอบโดย
check IP Address ซึ่งถ้าเราใช้

<?php
    $ip=getenv(REMOTE_ADDR);
    print  "IP Address is $ip";
?>


ซึ่งเราก็จะได้ IP Address มา แต่ก็ถ้าเครื่องนั้น ๆ ใช้ Proxy Server เราจะได้ IP Address ของ Proxy มาแทน
ซึ่งเราควรแก้ไข code ที่ใช้ มาเป็น

<?php
    if (getenv(HTTP_X_FORWARDED_FOR))
        $ip=getenv(HTTP_X_FORWARDED_FOR);
    else
        $ip=getenv(REMOTE_ADDR);

    print "IP Address is $ip";
?>


จะทำให้เราได้ IP Address ของเครื่องนั้น ๆ จริง ๆ

TAGS : ip address getenv proxy server เทคนิค