我继承了一个旧站点,出于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对参数的处理方式有所不同。
有什么提示吗?
答案 0 :(得分:1)
您在这里不需要正则表达式,反正会增加不必要的处理开销。
Nginx已经捕获了url参数。您可以为所有参数使用$args
变量,或者为每个参数加上前缀$arg_
,因此,假设您所有的url都与此格式匹配,则可以使用如下位置块:
location /section/ {
return 301 https://www.example.com/page/$arg_page;
}
答案 1 :(得分:0)
您的正则表达式中有一个斜杠,因此只能匹配sudo -H pip3 install fs
sudo -H pip3 install prompt-toolkit --force-reinstall
pip3 install prompt-toolkit --force-reinstall
。
尝试www.example.com/section/?page=3/