nginx 配置代理物件的host
阿新 • • 發佈:2020-07-30
nginx配置代理物件,可以修改http的header裡面的屬性
http {
server {
listen 8000;
server_name localhost;
location / {
proxy_pass http://springboot;
proxy_set_header HOST $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Request-Url $request_uri;
root /usr/share/nginx/html;
index index.html index.htm;
}
}
通過在http->server->proxy_set_header這個屬性來實現
如果要修改代理物件的host則可以 proxy_set_header HOST 【value】;
其中value是你要設定到代理物件裡面的具體的值
這個值可以引用nginx的環境變數
$host
-
當客戶端通過ip訪問nginx,nginx再將請求轉發到被代理物件時,被代理物件獲取到的host實際上時nginx所在宿主機的ip;
-
當客戶端通過域名訪問nginx,被代理物件獲取到的host為客戶端請求的域名
$http_host
-
當客戶端通過ip訪問nginx,nginx再將請求轉發到被代理物件時,被代理物件獲取到的host實際上時nginx所在宿主機的ip:port;192.168.137.160:8000
-
當客戶端通過域名訪問nginx,被代理物件獲取到的host為客戶端請求的域名;port;如:lgm.com:8000
$proxy_host
這個引數經過測試,跟不配置proxy_set_header效果相同