Nginx
Nginx 在設置前清除 X-Forwarded-For
在設置自己的 X-Forwarded-For 標頭之前,我可以在 nginx 配置中使用什麼來清除任何現有的 X-Forwarded-For 標頭?我目前正在使用 Nginx 在將流量傳遞到 HAProxy 以進行負載平衡之前終止 SSL。
現在,我有:
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
但是,這會將新的 IP 地址附加到任何現有 X-Forwarded-For IP 地址的末尾。有沒有辦法只保留 Nginx 看到的地址?
只是不要使用
$proxy_add_x_forwarded_for
- 它存在的全部目的是執行附加行為。反而:
proxy_set_header X-Forwarded-For $remote_addr;
如果有人仍然有這個問題,你可以使用“more_clear_input_headers”來只保留 Nginx 看到的最後一跳的地址。
more_clear_input_headers "X-Forwarded-For";
查看來自 openresty 的文件: https ://github.com/openresty/headers-more-nginx-module#more_clear_input_headers