Если я mod_rewriting URL из:
http://www.mysite.com/blog/this-is-my-title/1/
в
http://www.mysite.com/blog.php?title=this-is-my-title&id=1
… возможно ли тогда произвольно прикрепить значение get к URL-адресу позже, или же mod_rewrite отключит его?
МОЙ РЕЖИМ ПРАВИЛА:
RewriteRule ^blog/([A-Za-z]+)/(0-9]+)/? blog?title=$1&id=$2 [L]
ПРИМЕР:
я могу пойти http://www.mysite.com/blog/this-is-my-title/1/?first=Johnnie&last=Wiggles
что в основном означало бы
http://www.mysite.com/blog.php?title=this-is-my-title&id=1&first=Johnnie&last=Wiggles
Я бы подумал, что это должно сработать, но по какой-то причине это не для меня на данный момент.
Вы можете добавить QSA к флагам RewriteRule
:
RewriteRule page_([0-9]+)\.html page.php?id=$1 [QSA]
Будет перенаправлено page_1.html?a=2
на page.php?id=1&a=2
Однако будьте осторожны, поскольку запрос page_1.html?id=2
будет перенаправлен на page.php?id=1&id=2
и (в PHP), $_GET['id']
будет равно 2.
Его можно добавить, используя флаг QSA (добавить строку запроса).
RewriteEngine on RewriteRule {from-url} {to-url} [L,NC,QSA]