How to php get the real ip address behind the proxy

Beberapa hari yang lalu saya iseng ingin mengutak atik script php di salah satu backend aplikasi karena setelah menggunakan front end nginx sebagai reverse proxy untuk beberapa backend aplikasi, IP yang terdeteksi adalah IP front end (IP Proxy) dan bukan real IP dari visitor. Setelah membaca manual php di php.net akhirnya saya menemukan parameter yang harus diubah agar script php mengenali real ip address dari visitor.

Sebelum melangkah ke script php, sedikit gambaran mengenai nginx reverse proxy adalah sebuah mesin yang terinstal nginx dan berfungsi sebagai reverse proxy of course dengan konfigurasi nginx reverse proxy seperti pada umumnya:

location / {
proxy_pass  http://jamur;
proxy_redirect off;
proxy_set_header   Host             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}

Kemudian agar script php mengenali real ip dari visitor saya menggunakan X-Forwarded-For dan bukan REMOTE_ADDR. Sederhana bukan :p

One thought on “How to php get the real ip address behind the proxy

  1. Hi, do you already compare open cart with others (os commerce, virtuemart,  drupal e commerce, magento, prestashop, zen cart, cube cart). 

Leave a Reply

Your email address will not be published. Required fields are marked *


*