Попробуйте что-то вроде этого:
if (isset($_GET['q'])) {
header('Location: http://example.com/search-'.rawurlencode($_GET['q']));
exit;
}
Это перенаправит запрос, URL-запрос которого содержит аргумент q
, как в /index.php?q=SEARCHTERMHERE&x=0&y=0
на /search-SEARCHTERMHERE
.
Редактировать Вы также можете попробовать это только с mod_rewrite:
RewriteCond %{THE_REQUEST} ^GET\ /index\.php\?
RewriteCond %{QUERY_STRING} ^(([^&]*&+)*)q=([^&]*)&*(.*)
RewriteRule ^index\.php$ /search-%3?%1%4 [L,R]
RewriteRule ^search-(.+) index.php?q=$1 [L,QSA]
Первое правило - перенаправлять запрос извне, а второе - для внутреннего перезаписи.