Назад | Перейти на главную страницу

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

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

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

Я надеюсь использовать no-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

Спасибо!

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

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"