重定向 Nginx 参数

史蒂文·加西亚

我继承了一个旧网站,出于 SEO 的原因,我希望将旧的参数链接重定向到新的 api。像这样:

www.example.com/section/?page=3 => www.example.com/page/3

这是我对正则表达式重定向的尝试:

location ~ ^/section\/\?page=(.*)/$ {
    return 301 https://www.example.com/page/$1;
}

我无数次使用这种模式没有问题,但经过数小时的戳戳后,我仍然无法使重定向工作。显然 Nginx 对参数的处理方式不同。

有小费吗?

米尼克

您在这里不需要正则表达式,无论如何它都会增加不必要的处理开销。

Nginx 已经捕获了 url 参数。您可以将$args变量用于所有参数,或者单个参数带有前缀$arg_,因此假设您的所有 url 都匹配此格式,您可以只使用这样的位置块:

location  /section/ {
    return 301 https://www.example.com/page/$arg_page;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章