Как передать параметры GET на переписанный URL?


13

У меня есть .htaccessправило переписать, как это:

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^search/(.*)$ search.php?q=$1

Что это делает, если кто-то посещает http://example.com/search/testURI, который действительно обрабатывается http://www.example.com/search.php?q=test.

Теперь, если я попытаюсь передать дополнительный случайный параметр GET моему переписанному URL-адресу, этот параметр игнорируется. Так что, если я попытаюсь сделать это здесь:

http://www.example.com/search/whatever?extra=true

Параметр extraигнорируется. Это, кажется, не проходит вообще.

Можно ли решить эту проблему? Если так, то как?

Ответы:


14

Вы ищете Query SТринга Aфлаг ppend - например ,

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^search/(.*)$ search.php?q=$1 [QSA]

Смотрите mod_rewriteдокументацию для полного описания флагов RewriteRule.


Ах, хорошо! Я знал, что было что-то подобное. Я .htaccessнуб.
Джейк Уилсон

Есть ли способ добавить QSA ко всем правилам
hakkikonu

Привет @danlefree Знаю, что это старый вопрос, но при использовании Wamp, когда я делаю это, все мои таблицы стилей, скрипты и т. Д. Теряют ссылку. как я могу решить это?
DannyGM
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.