标签:set header 代理 nginx host proxy
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效果相同
传到被代理主机host为proxy_pass配置的域名springboot
标签:set,header,代理,nginx,host,proxy 来源: https://www.cnblogs.com/liguangming/p/13402781.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。