【问题标题】:Nginx - rewrite rule url encodingNginx - 重写规则url编码
【发布时间】:2020-09-15 19:10:11
【问题描述】:

获得了 nginx 的重写规则;

if ($query_string ~ "page=search&shift=1&reset=1&search=([^&]+)(&searchButton=Zoek)?"){
    set $search $1;
    rewrite ^/?$ https://$host/zoeken/$search/? permanent;
}

当执行搜索查询hi/hi时,URL的输出为: website.com/zoeken/hi/hi,返回 404。

预期结果是website.com/zoeken/hi%52hi/

获得预期结果的正确重写规则是什么?

【问题讨论】:

    标签: nginx url-rewriting


    【解决方案1】:

    似乎在 nginx 中我们无法关闭或打开 URL 编码。 我们可以选择安装另一个模块,http://wiki.nginx.org/HttpSetMiscModule#set_escape_uri

    但由于我们想避免安装模块,所以我们在 apache 中设置 rewrites 规则,而不是在 nginx 中。

    太糟糕了。

    【讨论】:

      猜你喜欢
      • 2013-10-12
      • 1970-01-01
      • 2017-03-13
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 2019-08-06
      • 2010-11-20
      相关资源
      最近更新 更多