在同一个location块中,如果同时有proxy_set_header指令和proxy_pass指令,会先执行proxy_set_header指令,再执行proxy_pass指令。
所以下面的两段代码等效:
location / {
proxy_pass http://your_django_backend;
# 设置header信息
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 其他 Nginx 配置...
}
location / {
# 设置header信息
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://your_django_backend;
# 其他 Nginx 配置...
}