Пересылка строки запроса с правилом перезаписи - PullRequest
0 голосов
/ 21 февраля 2012

Я пытаюсь написать правило перезаписи, но у меня есть серьезные проблемы с пересылкой строки запроса. Я также пробовал флаг [QSA], но он не работал.

После правильного запроса:

/localhost/registry/registry.php?id=something&password=somethingelse&uri=whatever

И я бы превратился во что-то вроде этого:

/localhost/registry/register

с тем же почтовым запросом (id = что-то & пароль = что-то еще & uri = что угодно). На этом этапе мой .htaccess изменит вышеуказанный запрос следующим образом:

/localhost/registry/registry.php?request=register&id=something&password=somethingelse&uri=whatever

Затем я попробовал следующее правило перезаписи в моем .htaccess:

RewriteRule ^register$ http://localhost/registry/registry.php?request=$0&$1 [QSA]

Но после последнего '&' ничего не отображается, а переменная $ 1 пуста. Какое правило перезаписи я должен написать?

Заранее спасибо.

!!! РЕШЕНИЕ !!!

RewriteRule ^register$ /registry/registry.php?request=$0 [QSA]

1 Ответ

1 голос
/ 21 февраля 2012
RewriteRule ^register$ /registry/registry.php?request=$0  [QSA]

если вы перейдете на http://localhost/registry/register?id=1, тогда строка запроса будет (из php):

array(2) {
  ["request"]=>
  string(8) "register"
  ["id"]=>
  string(1) "1"
}
...