【问题标题】:How to Change $request_uri to first original, Nginx如何将 $request_uri 更改为第一个原始 Nginx
【发布时间】:2016-10-24 04:02:17
【问题描述】:

例子:

-Step 1. 示例客户端请求:http://domain/123 =>(现在在 Nginx 中:$request_uri original == /123)

-Step 2. 如果我将 nginx 重定向或类似的东西 http://domain/123 配置为 http://domain/456 => (Nginx 中的 $request_uri 将更改:$request_uri == /456

我想当我现在得到 $request_uri 时它会是 = /123,我该怎么做?谢谢

类似这样的:

proxy_set_header Original-uri $request_uri ;

如何保存第一个 request_uri 的变量?

【问题讨论】:

  • If i config nginx redirect — 如果这意味着 301/302 重定向,那么就没有 sane 方法来保留原始 url。
  • 好的,没有办法保留 $request_uri 的原始 url。所以,我只想获取第一个请求 uri (=/123) 的变量,我可以这样做吗?
  • 您可以将其作为查询参数传递。但是为什么首先需要重定向?
  • 感谢您的建议,这是我的问题“github.com/kyprizel/testcookie-recaptcha-processor/issues/1”当我在 location = /captcha { 中调用 $testcookie_nexturl 时不起作用。 .proxy_set_header Testcookie-Nexturl $testcookie_nexturl;.} => 所以我尝试用 $request_uri 替换它但没有运气,因为 request_uri 现在是 =/captcha

标签: url nginx url-rewriting uri request-uri


【解决方案1】:

我的回答是:

proxy_set_header Original-uri $request_uri;改成

proxy_set_header Original-uri  $http_referer;

因为请求uri =/123是请求uri =/456的referer

【讨论】:

    猜你喜欢
    • 2013-09-23
    • 2016-07-13
    • 2019-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-20
    相关资源
    最近更新 更多