Once you have put a reverse proxy in front of your Apache site, you will only see the IPs of the proxy server. This will cause issues of you are using IP for authentication, or for location based services.
This is quickly resolved by adding this module to apache - rpaf
For ubuntu - it is this easy -
sudo apt-get install libapache2-mod-rpaf
service apache2 reload
Thats it. Now you will have the correct IP from the initial client browser available for Apache, which no changes required in your code.
Details here for Ubuntu: https://help.ubuntu.com/community/Nginx/ReverseProxy