| | 105 | // Correct comment's ip address with X-Forwarded-For http header if you are behind a proxy or load balancer. |
| | 106 | // Via http://wordpress.org/extend/plugins/real-ip/ |
| | 107 | if ( function_exists('filter_var') ) { |
| | 108 | if ( isset($_SERVER['HTTP_X_FORWARDED_FOR']) && filter_var($_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE) ) |
| | 109 | $_SERVER['REMOTE_ADDR'] = filter_var($_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE); |
| | 110 | elseif ( isset($_SERVER['HTTP_X_REAL_IP']) && filter_var($_SERVER['HTTP_X_REAL_IP'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE) ) |
| | 111 | $_SERVER['REMOTE_ADDR'] = filter_var($_SERVER['HTTP_X_REAL_IP'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE); |
| | 112 | } else { |
| | 113 | if ( isset($_SERVER['HTTP_X_FORWARDED_FOR']) ) |
| | 114 | $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR']; |
| | 115 | elseif ( isset($_SERVER['HTTP_X_REAL_IP']) ) |
| | 116 | $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_REAL_IP']; |
| | 117 | } |
| | 118 | |
| | 119 | |