proxy_pass_request_headers off的坑
来源:互联网 发布:java能调用api 编辑:程序博客网 时间:2024/06/05 18:34
举个例子,客户端访问80端口,服务器需要将请求转发至8080端口处理,
我们希望将客户端传递的headers过滤,再设置内部转发请求header(test:"123"),
坑(通过ngx.req.set_header设置的请求头,会被过滤):
server { listen 80; location / { content_by_lua ' ngx.req.set_header("test", "123") local response = ngx.location.capture("/upstream", { method = ngx.HTTP_GET, vars = { my_uri = "/hello", }, body = "", } ) ngx.exit(200) '; } location /upstream { set $my_uri $my_uri; proxy_pass_request_headers off; proxy_pass http://127.0.0.1:8080$my_uri; } } server { listen 8080; location /hello { content_by_lua ' for k, v in pairs(ngx.req.get_headers()) do ngx.log(ngx.ERR, "###: " .. k .. " : " .. v) end '; } }
正确做法(传递header,重新设置):
server { listen 80; location / { content_by_lua ' local response = ngx.location.capture("/upstream", { method = ngx.HTTP_GET, vars = { my_uri = "/hello", my_test = "123", }, body = "", } ) ngx.exit(200) '; } location /upstream { set $my_uri $my_uri; set $my_test $my_test; proxy_pass_request_headers off; proxy_set_header test $my_test; proxy_pass http://127.0.0.1:8080$my_uri; } } server { listen 8080; location /hello { content_by_lua ' for k, v in pairs(ngx.req.get_headers()) do ngx.log(ngx.ERR, "###: " .. k .. " : " .. v) end '; } }
End;
阅读全文
0 0
- proxy_pass_request_headers off的坑
- @echo off和echo off的区别
- on()、off()的妙用
- 批处理文件的@echo off
- @echo off 的作用
- set echo on/off,set term on/off,set feedback off,set heading off的问题
- 批处理文件的@echo off是什么意思?
- 批处理文件的@echo off是什么意思?
- 批处理文件的@echo off是什么意思?
- @echo off 与echo off的区别是什么??
- 俺的CSDNBlog 正式kick off
- 关于SET QUOTED_IDENTIFIER {ON|OFF}的问题
- 关于SET QUOTED_IDENTIFIER {ON|OFF}的问题
- 关于SET QUOTED_IDENTIFIER {ON|OFF}的问题
- 研发部门的Kick Off Meeting
- 关于SET QUOTED_IDENTIFIER {ON|OFF}的问题
- SET QUOTED_IDENTIFIER OFF语句的作用
- 关于INPUT的autocomplete="off" 属性
- baseRTC: 提取编译webRTC的base库
- Construct2:自制简易超级玛丽射击游戏进阶
- SpringBoot--整合Mybatis和Redis
- TensorFlow利用saver保存和提取参数
- 小程序合集
- proxy_pass_request_headers off的坑
- 更于午夜,SpringBoot返回页面404,毁我睡眠
- python基础(正则表达式)
- systemtap定位内核bug
- 大数相加
- maven settings.xml
- 关于JavaScript闭包学习
- (2)Spring IoC的第一个例子
- AI转型学习计划