2015-10-13 5 views
0

Так что у меня мой .htaccess готов и работает, чтобы переписать мои сайты ссылаются на поисковый запрос от этого:Htaccess + Поисковый запрос

www.domain.com/search?q=blabla 

к этому:

www.domain.com/blabla 

Он отлично работает, если я печатаю что-то в моем ручном режиме, как показано выше, но проблема в том, что пользователь отправляет поиск, который он показывает, как

поиск? q = blabla

, и это не удивительно, как моя форма действия имеет search.php, как так

действие = "search.php"

Так как же я получаю надлежащего поиска submition поэтому он будет показывать только поисковое слово вместо ? q = blabla запрос?

ДОБАВЛЕНО

Мои правила HTAccess:

Options -Indexes 
Options +FollowSymlinks 
RewriteEngine On 
RewriteRule ^([0-9_-]+)/?$ index.php?id=$1 [L] 
RewriteRule ^([^/.]+)/?$ search.php?q=$1 [L] 
+0

Что ваши правила Htaccess? –

+0

Что делать, если пользователь пытается выполнить поиск «search.php»? Они посетили бы 'domain.com/search.php'? – hjpotter92

+0

все, что им нужно сделать, это искать в моей форме поиска, но я хочу сделать дружественный url вместо этого ugnly search.php? Q = whatever – AlwaysConfused

ответ

1

Добавить это правило:

RewriteCond %{THE_REQUEST} \ /search(?:\.php|)\?q=([^\ &]+) 
RewriteRule^/%1? [L,R] 

прямо под RewriteEngine On

+0

Perfecto! Спасибо за это. Я добавил это вместе с 'RewriteRule^([^ /.] +) /? $ Search.php? Q = $ 1 [L]', поэтому он распознает как фактический поиск – AlwaysConfused

+0

Он отлично работает на ПК, но по какой-то причине он не делает работа на мобильных телефонах .. – AlwaysConfused

Смежные вопросы