【问题标题】:Remove a specific query parameter from URL从 URL 中删除特定的查询参数
【发布时间】:2018-01-16 05:09:44
【问题描述】:

我有一个网址,例如:

http://www.example.com/something?abc=one&def=two&unwanted=three

我想删除不需要的 URL 参数并保持 URL 的其余部分完好无损,它应该如下所示:

http://www.example.com/something?abc=one&def=two

相对于其他参数,此特定参数可以位于 URL 中的任何位置。

这个问题看起来很简单,但我尝试了很多次但最终都失败了。

【问题讨论】:

    标签: redirect mod-rewrite nginx url-redirection


    【解决方案1】:

    整个查询字符串存在于$args 变量中或$request_uri 变量的末尾。您需要构建一个正则表达式来捕获您要删除的部分之前和之后的所有内容。

    例如:

    if ($request_uri ~ ^(/something\?.*)\bunwanted=[^&]*&?(.*)$ ) 
    {
        return 301 $1$2; 
    }
    

    更多信息请参见this documentthis caution 使用 if

    【讨论】:

      猜你喜欢
      • 2014-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-10
      • 2012-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多