2015-06-13 2 views
2

У меня есть URL-адрес, как это:Htaccess URL перенаправления (символ "?")

http://mydomain.es/foro.php?topic=9 

И я хочу, чтобы перенаправить его на:

http://mydomain.es/foro/9/ 

Но я не могу заставить его работать я пытался что-то вроде:

redirectMatch 302 ^/foro.php\?topic=([0-9]+)$ /foro/$1/ 

Но это не работает, проблема в том, характер, если я удалить его в URL (и использовать redirectMarch как

redirectMatch 302 ^/foro.phptopic=([0-9]+)$ /foro/$1/) 

все в порядке, вы можете мне помочь? Я схожу с ума.

ответ

0

answered here - строки запроса не поддерживаются rewritematch. Вместо этого используйте mod_rewrite.

0

Это должно работать:

RewriteEngine On 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/?foro\.php\?topic=([^&\s]+) [NC] 
RewriteRule^/foro/%1? [NE,NC,R,L] 

RewriteRule ^([^/]+)/([^/]+)/?$ /foro.php?topic=$2 [QSA,NC,L]