专业的编程技术博客社区

网站首页 > 博客文章 正文

Nginx反向代理之proxy_set_header指令

baijin 2025-01-24 10:30:17 博客文章 14 ℃ 0 评论

该指令可以更改Nginx服务器接收到的客户端请求的请求头信息,然后 将新的请求头发送给代理的服务器

proxy_set_header是什么意思呢?

这里涉及到客户端,代理服务器,被代理的服务器

一般都是客户端先向代理服务器发送请求,代理服务器获取请求之后,能够获取到请求头的信息

客户端在发送请求的时候,会携带一些头信息

语法:proxy_set_header field value;

其中field是头信息的属性名,而value是该属性名所对应的属性值

它的默认值是:

proxy_set_header Host $proxy_host;

proxy_set_header Connection close;

它的存储位置在:

http、server、location 三个位置当中

需要注意的是,如果想要看到结果,必须在被代理的服务器上来获取添 加的头信息。

被代理服务器:[192.168.200.146]

server {
 listen  8080;
 server_name localhost;
 default_type text/plain;
 return 200 $http_username;
 }

代理服务器: [192.168.200.133]

server {
 listen  8080;
 server_name localhost;
 location /server {
 proxy_pass 
http://192.168.200.146:8080/;
 proxy_set_header username TOM;
 }
 }

具体配置流程:第一步,打开146这台服务器,这是一台被代理服务器

使用 vim ../conf/nginx.conf //打开配置资料

在配置文件中添加server模块,使用$http_username,可以获取请求头中的username内容,

之后修改代理服务器,133是代理服务器的内容,不配置proxy_set_header的效果

检验语法,重载配置

代理服务器配置server内容并没有呈现相关内容

之后在133中进行设置,添加proxy_set_header请求头指令(下面,设置proxy_set_header指令的意义是将Tom指令发送给客户端)

重新刷新之后就可以在浏览器中看到了Tom了,代理传递请求头的使用常用到

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表