2015-06-29 2 views
1

то, что я хочу ти изменить мой сайт URL от:Простая строка запроса перенаправления

mysite.com/users?q=user_name 

в

mysite.com/users/user_name 

поэтому я попытался это регулярное выражение на моем HTAccess:

RewriteCond %{REQUEST_URI} ^/users$ 
RewriteCond %{QUERY_STRING} ^q=(.*)$ 
RewriteRule ^(.*)$ mysite.com/users/%1 [L,R=301] 

но это перенаправление на следующий URL:

mysite.com/users/user_name?q=user_name

Любые идеи, почему он возвращает этот url вместо того, который мне нужен? Благодарю. Thats остальные кода файла Htaccess:

# DELETE index.php from URL # 
RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule .* /index.php/$0 

# Remove trailing slash/# 
RedirectMatch 301 ^(.+)/$ $1 

ответ

1

Наконец я нашел ответ на себя, добавив? до конца правила перезаписи, таким образом:

RewriteCond %{REQUEST_URI} ^/users$ 
RewriteCond %{QUERY_STRING} ^q=(.*)$ 
RewriteRule ^(.*)$ mysite.com/users/%1? [L,R=301] 
Смежные вопросы