1. 程式人生 > 其它 >nginx設定反向代理,獲取真實客戶端ip

nginx設定反向代理,獲取真實客戶端ip

如何獲取nginx反向代理後的真實客戶端IP地址,具體的nginx配置如下:

upstream這個模組提供一個簡單方法來實現在輪詢和客戶端IP之間的後端伺服器負荷平衡
upstream abc.com {
        server 127.0.0.1:8080;
        server 127.0.0.1:80;
        server 127.0.0.1:8000;
}
 
server {
        listen 80;
        server_name www.test.com;
        location / {
                proxy_pass http://abc.com;
                proxy_set_header    Host             $host;#保留代理之前的host
                proxy_set_header    X-Real-IP        $remote_addr;#保留代理之前的真實客戶端ip
                proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
                proxy_set_header    HTTP_X_FORWARDED_FOR $remote_addr;#在多級代理的情況下,記錄每次代理之前的客戶端真實ip
                proxy_redirect      default;#指定修改被代理伺服器返回的響應頭中的location頭域跟refresh頭域數值
        }
}