当前位置: 代码网 > 服务器>服务器>Nginx > Nginx中roxy_set_header与add_header区别举例浅析

Nginx中roxy_set_header与add_header区别举例浅析

2024年05月14日 Nginx 我要评论
proxy_set_header1 )概述proxy_set_header 和 add_header 是 nginx 配置中两个不同的指令, 它们各自有不同的用途proxy_set_header 指令

proxy_set_header

1 )概述

  • proxy_set_header 和 add_header 是 nginx 配置中两个不同的指令, 它们各自有不同的用途
  • proxy_set_header 指令用于修改转发到代理服务器(通常是后端应用服务器)的 http 请求头
  • 它允许您设置或覆盖请求头中的字段,以便后端服务器能够接收正确的信息或根据这些信息做出响应
  • 例如,有时可能会使用 proxy_set_header 来设置 host 头,这样后端服务器就知道它正在为哪个域名提供服务
  • 有时候,还可以设置 x-real-ip 和 x-forwarded-for 头来传递客户端的真实 ip 地址和请求链中的代理信息

2 ) 示例

location / {  
    proxy_pass http://backend_servers;  
    proxy_set_header host $host;  
    proxy_set_header x-real-ip $remote_addr;  
    proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;  
}

add_header

1 ) 概述

  • add_header 指令用于向 nginx 发出的 http 响应中添加或覆盖响应头字段
  • 这通常用于添加自定义的头部信息,如跨域资源共享(cors)的头部,或者为响应添加安全相关的头部(如 x-content-type-options)

2 ) 示例

location / {  
    # ... 其他配置 ...  
    add_header x-content-type-options nosniff;  
    add_header x-frame-options deny;  
    add_header x-xss-protection "1; mode=block";  
}

两者区别

  • 方向:proxy_set_header 修改的是请求头(request header),而 add_header 修改的是响应头(response header)
  • 目标:proxy_set_header 的目标是后端服务器,用于通知后端关于请求的一些信息;而 add_header 的目标是客户端,用于向客户端提供额外的信息或指令
  • 使用场景:proxy_set_header 通常在反向代理配置中使用,确保后端服务器能正确处理请求;而 add_header 在需要向客户端发送额外信息或增强安全性的情况下使用

总结 

到此这篇关于nginx中roxy_set_header与add_header区别的文章就介绍到这了,更多相关nginx proxy_set_header与add_header区别内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com