Fetch real IP using proxy pass

Posted July 3, 2017 10.7k views

I am attempting to fetch the real IP of the visitor on a Flask application that I am serving using Nginx server blocks on Ubuntu, but I get the same IP with all the visitors (my droplet’s IP). How do I fix this?

This is my current server config for my application.

server {
    listen 80;

    location / {


These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer

You need to setup the x-forwarded-for header, then read this header in your flask app to get the client’s real ip address.
Check out this tutorial for more info.

Hope this helps.

by Justin Ellingwood
Nginx is a high performance reverse proxy server and web server. In this guide, we will explore Nginx's http proxying and load balancing capabilities. We will cover how Nginx can use buffers and caching to improve the proxying experience for clients.