Я пытаюсь получить реальный / исходный IP-адрес запроса в настройке NGINX <-> GUNICORN.
Я считаю, что установил правильные заголовки в NGINX:
location / {
# checks for static file, if not found proxy to app
try_files $uri @app;
}
location @app {
set_real_ip_from 127.0.0.1/32;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass_request_headers on;
proxy_pass http://app;
}
и я заряжаю пулемет так:
...bin/python3.7 /opt/appbackend/bin/gunicorn --config python:app.gunicorn_conf app.wsgi
gunicorn_conf.py содержит строку:
access_log_format = '%({X-Forwarded-For}i)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"'
Что бы я ни делал, я всегда получаю в результате:
def test(request):
return HttpResponse(request.META['REMOTE_ADDR'])
127.0.0.1
Спасибо за любое предложение.