Правило перезаписи htaccess, соответствие параметров URL - PullRequest
0 голосов
/ 27 июня 2019

Извините, что задаю такой тривиальный вопрос, но я не могу найти ответы в RewriteRule docs.Это должно быть что-то очень простое, чего мне не хватает здесь ...

Мне нужно перенаправить

/index.php/component/users/?view=login

на

/index.php

, если URL-адрес соответствует "view =login "

Я пытался

RewriteRule ^((.*)\?view=login(.*))$ /index.php? [R,L]

, и он не работает, хотя его тестирование на www.regextester.com или www.regexpal.com показывает совпадение

Вв то же время сопоставление подстроки «users» работает отлично, используя

RewriteRule ^(.*)/users(.*)$ /index.php? [R,L]

В чем проблема с моим регулярным выражением, совпадающим с «view-login»?Почему он работает на тестере, а не на реальном сайте?

Спасибо!

ОБНОВЛЕНИЕ Мне удалось заставить его работать, используя RewriteCond и RewriteRule:

RewriteCond %{QUERY_STRING} login
RewriteRule ^(.*)$ /? [R,L]

Тем не менее, я не могу понять, почему один RewriteRule не работает, чтобы соответствовать строке после "?".Это работает только для части строки перед "?".

Буду признателен, если кто-нибудь сможет это объяснить.Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...