Как сопоставить строку в URI с регулярным выражением? [дубликат]

В моей конфигурации Apache httpd.conf я хочу установить правило, как показано ниже

SetEnvIfNoCase %{QUERY_STRING} ^.*(getBook+)$ no-gzip dont-vary

Я надеюсь не использовать gzip, когда мой URL-адрес выглядит как

http://myurl.fake.com/book/getBook3?id=234 
http://myurl.fake.com/book/getBook1?id=xxx

Я не конечно, смогу ли я сделать это, настроив что-то подобное в httpd.conf ..

Причина, по которой я делаю строку запроса, заключается в том, что URL-адрес myurl.fake.com/book/getBook3 был mod_rewrite из myurl.fake.com/index.php?controller=book&action=getBook3

Спасибо!

1
задан 31 May 2012 в 10:00
1 ответ

Следующее правило перезаписи под первым правилом перезаписи должно помочь:

RewriteCond %{QUERY_STRING} ^id=[0-9]*$
RewriteRule ^(/book/getBook(1|3))$ $1 [E=no-gzip:1,E=dont-vary:1,QSA]

Убедитесь, что ваше первое правило перезаписи для myurl.fake.com/index.php?controller=book&action=getBook3 не имеет флага "L"

1
ответ дан 4 December 2019 в 01:05

Теги

Похожие вопросы