nginx反向代理proxy_set_header
|
nginx反向代理proxy_set_header使用
用途
设定被代理服务器接收到的header信息
- 允许重新定义或添加字段传递给代理服务器的请求头
- 值可以包含文本、变量和它们的组合
- 没有定义时会继承之前定义的值
语法
- proxy_set_header field value
复制代码 默认值(只有两个字段被重定义):- proxy_set_header Host $proxy_host;
- proxy_set_header Connection close;
复制代码 配置说明
- 项目 值 说明
- Host $http_host 服务器本身IP
- X-Real-IP $remote_addr 前一节点IP(非用户真实IP)
- X-Forwarded-For $proxy_add_x_forwarded_for 前一节点X-Forwarded-For值
- X-Forwarded-Proto $scheme 浏览器在访问时的实际协议
复制代码 X-Forwarded-For:
简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项。
它不是RFC中定义的标准请求头信息,在squid缓存代理服务器开发文档中可以找到该项的详细介绍。
标准格式:X-Forwarded-For: client1, proxy1, proxy2。
值通过一个“逗号+空格”把多个IP地址区分开,最左边(client1)是最原始客户端的IP地址,代理服务器每成功收到一个请求,就把请求来源IP地址添加到右边。
变量$host、$http_host、$proxy_host区别说明:
标准配置示例
- server {
- listen 80;
- server_name www.xxx.com;
-
- location /
- {
- proxy_pass http://xxx.com;
- proxy_set_header host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- }
- }
复制代码 proxy_ssl_session_reuse on; 默认为on,如果我们在错误日志中发现“SSL3_GET_FINSHED:digest check failed”的情况时,可以将该指令设置为off。- proxy_ssl_verify on; #开启代理时校验后端服务器公钥证书
- proxy_ssl_server_name on; #代理HTTPS服务器建立连接时,是否传递SNI信息。
复制代码 总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
来源:https://www.jb51.net/server/322194rt9.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|
|
|
发表于 2024-6-11 22:16:37
举报
回复
分享
|
|
|
|