【发布时间】:2020-07-20 08:37:36
【问题描述】:
我的 Django 应用程序有以下 Nginx 配置:
upstream api {
server localhost:8000;
}
server {
listen 80;
location / {
proxy_pass http://api;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /staticfiles {
alias /app/static/;
}
}
我将此配置基于tutorial here。经过一番研究,似乎设置Host 标头允许Django API 确定原始客户端的IP 地址(而不是代理的IP 地址)。
X-Forwarded-For 标头有什么意义?我在 nginx 日志中看到一个名为 $http_x_forwarded_for 的字段,但我不确定它是否相关。
【问题讨论】:
标签: django nginx x-forwarded-for