From c82c937fbb3f092b52c895561eec73499a739389 Mon Sep 17 00:00:00 2001 From: thisgun Date: Fri, 26 Oct 2018 11:54:53 +0900 Subject: [PATCH] =?UTF-8?q?get=5Freal=5Fclient=5Fip=20=ED=95=A8=EC=88=98?= =?UTF-8?q?=EC=97=90=20=ED=95=84=ED=84=B0=EB=A7=81=20=EC=BD=94=EB=93=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/common.lib.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/common.lib.php b/lib/common.lib.php index 65f555a0d..c12ff17e3 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -3423,10 +3423,13 @@ function is_use_email_certify(){ function get_real_client_ip(){ - if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) - return $_SERVER['HTTP_X_FORWARDED_FOR']; + $real_ip = $_SERVER['REMOTE_ADDR']; - return $_SERVER['REMOTE_ADDR']; + if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) && preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\z/', $_SERVER['HTTP_X_FORWARDED_FOR']) ){ + $real_ip = $_SERVER['HTTP_X_FORWARDED_FOR']; + } + + return preg_replace('/[^0-9.]/', '', $real_ip); } function get_call_func_cache($func, $args=array()){