Моя цель - чтобы запросы на /foobar?key=123
следует перенаправить на /download/foobar.html?key=123
.
В настоящее время для этого я использую следующий код:
location /foobar {
rewrite ^/foobar(.*)$ /download/foobar.html$1 permanent;
}
Это помогает, но у нас есть старый код, который также вызывает /FooBar?key=123
и /Foobar?key=123
который игнорирует правило перезаписи.
Как мне их тоже переписать? Могли бы использовать:
location ~* ^/foobar {
rewrite ^ /download/foobar.html$1 permanent;
}
но разве это не выходит из правила?
Прежде всего, location
по умолчанию учитывается регистр; location ~* ^/foobar$
исправлю это.
Для rewrite
, он всегда чувствителен к регистру, но вы можете сделать так, чтобы выражение соответствовало обеим формам:
rewrite ^/[Ff]oo[Bb]ar(.*)$ /download/foobar.html$1 permanent;