lucky lucy 2022-09-21 22:05 采纳率: 0%
浏览 83
已结题

nginx配置中,如何先处理和记录url中带的信息后在进行rewrite 302跳转到新url?

一般的Nginx的location配置里经过流程 acsess, content, log就足够了。我有个这样的需求,就是匹配到location后,先对url里带的请求参数进行处理和记录,然后在进行一个302跳转到新的url。代码如下:

location = /land {
content_by_lua_file content.lua;
log_by_lua_file log.lua;
rewrite ^ http://www.baidu.com;
}

我原本以为他们会按顺序执行,先处理老的url里的信息,再跳转到新url,但是实践证明它只会执行rewrite语句,最重要的content部分不执行,log部分能执行,但是content不执行,log就没啥用了,因为这里log的作用是把content里记录的信息发送到redis数据库里。

我的疑问是这种需求302跳转是不是根本不可能实现。如果能实现,大概要怎么改写结构呢?

我目前有个想法,如下:

location = /land {
rewrite_by_lua_file rewrite.lua;
log_by_lua_file log.lua;
}

将content.lua中的内容放到rewrite.lua里去,并且用类似seturi()函数跳转到新地址,也就是不在location里配置rewrite语句了,就是可能跳转到新地址后,log部分又不会执行了。这个不确定。

大概怎么改写思路呢,反正代码内容没问题,就是结构部分不知道怎么调整能实现我的需求。

  • 写回答

1条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 9月29日
      • 创建了问题 9月21日

      悬赏问题

      • ¥15 VS2019不能设置QT的verson了,设置了点确定又消失了,怎么解决呢?
      • ¥15 用java解决,要解释一下给我
      • ¥100 项目经理想学开发牛牛指点迷津有偿
      • ¥15 vscode 配置时出现问题
      • ¥15 pygame安装失败
      • ¥15 数据库原理怎么从文字描述中的句子推出(分析)函数依赖?
      • ¥15 想要使用有序logistic模型,因变量收集结果为以下,可以继续分析吗?
      • ¥15 C语言的问题 求尽快解答一下
      • ¥15 sql相关子查询的一道选择题
      • ¥15 关于图像检测的问题#