Если вы пытаетесь переписать с:
http://somewebsite.com/display.php?country=USA&state=Minnesota&city=Minneapolis
на:
http://somewebsite.com/USA/Minnesota/Minneapolis
Тогда ваше правило перезаписи обратное - формат для RewriteRule
строк is:
RewriteRule <pattern to match> <substitution>
Таким образом, вы бы хотели, чтобы шаблон соответствовал для ссылки на /display.php...
, а замена была бы новым URI /country/state/city
.Кроме того, вам нужно использовать условное выражение RewriteCond
, чтобы соответствовать строке запроса.Ваше правило должно выглядеть примерно так:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^country=([a-zA-Z]+)&state=([a-zA-Z]+)&city=([a-zA-Z]+)$
RewriteRule ^/display.php$ /%1/%2/%3? [R]
(обратите внимание на завершающий ?
в конце RewriteRule
- это означает, что строка запроса должна быть удалена. Без завершающего ?
, вы бы повторили строку запроса.)