您的位置:首页 > 理论基础 > 计算机网络

Nginx proxy_set_header中$proxy_host,$host,$http_host的区别

2017-05-18 18:55 681 查看
在使用Nginx做反向代理的时候,proxy_set_header功能可以设置反向代理后的http header中的host,

那么常用的几个设置中$proxy_host, $host,$http_host又都表示什么意思呢?

Nginx的官网文档中说下面这两条是做反代时默认的,所以$proxy_host 自然是 proxy_pass后面跟着的host了

proxy_set_header Host       $proxy_host;
proxy_set_header Connection close;


如果客户端发过来的请求的header中有’HOST’这个字段时,

$http_host和$host都是原始的’HOST’字段

比如请求的时候HOST的值是www.csdn.net 那么反代后还是www.csdn.net

如果客户端发过来的请求的header中没有有’HOST’这个字段时,

建议使用$host,这表示请求中的server name。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx