ตรวจ IP หลัง PROXY ด้วย X-FORWARDED-FOR

ตรวจ IP หลัง PROXY ด้วย X-FORWARDED-FOR
ในบทเรียนนี้เราจะเรียนรู้การได้มาซึ่ง IP ของผู้ใช้งาน ซึ่งโดยปกติหากเป็น PHP จะดูจาก $_SERVER['HTTP_CLIENT_IP'] ซึ่งเป็นค่า IP ของผู้ใช้งาน
$ipaddress = $_SERVER['HTTP_CLIENT_IP']
หากผู้ใช้งานนั้นๆเข้า Proxy หรือ Load Balance ก่อนเข้าเว็บไซต์ของเรา โดยปกติ Proxy เหล่านั้นจะมีการใส่ HTTP Header ที่ชื่อว่า X-Forwarded-For (XFF) ซึ่งเราสามารถรับค่า X-Forwarded-For ได้เป็น
$ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
นอกเหนือจาก X-Forwarded-For แล้วยังมี header อื่นๆ เช่นกัน ที่บ่งบอกถึง IP ที่มีการ request ผ่านไปยัง Proxy, Load Balance เช่น X-Originating-IP, X-Remote-IP, X-Remote-Addr เป็นต้น

Comments

Popular Posts