资讯详情

openresty改写302的Location

引言

本文介绍了使用情况openresty修改302重定向地址和参数的方法可以解决内外网络访问不一致的问题;openresty集成了lua以及许多实用的工具和模板,比较nginx还是方便多了;proxy_redirect缺陷是只能修改域名和端口,不能很好地处理复杂的情况.

原文地址: http://blog.duhbb.com/2022/02/15/usage-of-openresty-in-rewriting-302-location/

欢迎访问我的博客: http://blog.duhbb.com/

解决的问题

嘿嘿, openresty 真是神器, YYDS!

file

以上使用 lua 修改 nginx 302 重定向后的 Location, 使得将 Location 内网成为外网访问的地址.

对应还有:

body_filter_by_lua

  • 获取所有请求的响应数据
  • 敏感信息检测所有请求的响应数据
  • 检测到敏感数据返回,然后进行脱敏处理

注意:

  • 文档中指出body_filter_by_lua一个请求可以多次调用
  • 当代码运行到body_filter_by_lua时,HTTP报头(header)已经发出去了。如果之前设置了与响应体相关的报告,并且在body_filter_by_lua修改响应体会导致响应报头与实际响应不一致。举个简单的例子:假设上游服务器返回Content-Length报头,而body_filter_by_lua对响应体的实际大小进行了修改。客户端收到报告后,如果按其中 Content-Length去处理,然后他掉进了坑里。由于Nginx流式响应,发出的报头就像泼出的水,只能提前修改。OpenResty提供了跟body_filter_by_lua相对应的header_filter_by_lua。

参考文档

  • https://blog.csdn.net/weixin_33734785/article/details/89124813
  • https://blog.csdn.net/ygm_linux/article/details/81563129
  • https://blog.csdn.net/wtswjtu/article/details/38898945
  • https://zhuanlan.zhihu.com/p/67904411

结束语

本文介绍了使用情况openresty修改302重定向地址和参数的方法可以解决内外网络访问不一致的问题;openresty集成了lua以及许多实用的工具和模板,比较nginx还是方便多了;proxy_redirect缺陷是只能修改域名和端口,不能很好地处理复杂的情况.

原文地址: http://blog.duhbb.com/2022/02/15/usage-of-openresty-in-rewriting-302-location/

欢迎访问我的博客: http://blog.duhbb.com/

标签: ygm219微风速变送器精轧螺纹钢连接器ygm28mm

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台