我坚持使用NGINX重写规则,并希望你可以帮助我或指出正确的方向。我的问题看起来像这样:
如果出现特定参数,我想重写一个URL。例如,参数= 1,如下所示: www.old_domain.com?argument=1&id=1&l=dfsdgsh
如果出现此参数标志,则将其重定向到另一个域,但保留参数= 1之后的部分。例如,重定向到:www.new_domain.com?id = 1& l = dfsdgsh
我了解如何将整个旧域重定向到新域,但是我无法理解如何识别参数标志,以及如何将最后一部分带到新域。
干杯, Szop
答案 0 :(得分:2)
示例:
if ( $args ~ argument=([0-9]+)&id=1&l=([\w]+) ) {
set $arg $1;
set $l $2;
}
if ( $arg = 1) {
rewrite (.*) http://domain1/?id=$arg&l=$l?;
}
if ( $arg = 2) {
rewrite (.*) http://domain2/?id=$arg&l=$l?;
}