If you're running WordPress behind a proxy, chances are that the IP address of the user browsing your site won't show up, instead WordPress will see the IP address of your proxy server. Proxy Real IP sets this straight by looking at the HTTP headers that the proxy sends.
Proxy Real IP looks in the following HTTP headers:
X-FORWARDED-FOR, X-FORWARDED, FORWARDED-FOR, FORWARDED, X-REAL-IP
Proxy Real IP sets the user's IP address to the first HTTP header defined that matches a simple regular expression of an IP address (123.123.123.123).
Proxy Real IP also sets the $_SERVER['HTTPS'] variable correctly when running behind a proxy so that WordPress can determine whether or not the proxy connection is over HTTPS. It looks to the HTTP_X_FORWARDED_PROTO PHP server variable to determine this.
Installation is simple.
- Upload
proxy-real-ip.php
to the /wp-content/plugins/
directory or the /wp-content/mu-plugins/
directory if you're running a Multisite installation and want to force load the plugin for all sites.
- If you uploaded it to
/wp-content/plugins/
, then activate the plugin through the 'Plugins' menu in WordPress.
There are no settings for this plugin in the WordPress admin area. It should just work out of the box.