Редирект переменных в htaccess. Как правильно настроить?

locker locker   11.09.2017 14:51   187  
Добрый день проблема с редиректом. Раньше поисковый запрос на сайте выглядел вот так
http://сайт/search.php?search=запрос
После редизайна стал выглядеть так http://сайт/search?s=запрос

Суть проблемы: Нужно перенаправить трафик с старых страниц на новыеВ htaccess прописал вот так:
RewriteCond %{QUERY_STRING} (^|&)search\=(.*)
RewriteRule ^search\.php$ /search?s=%{QUERY_STRING}$1 [L,R=301]Работает не совсем корректно, в строку поиска передает search=запрос добавляя при этом лишний search=

Если прописать вот так:
RewriteCond %{QUERY_STRING} (^|&)search\=(.*)
RewriteRule ^search\.php$ /search?s=$1 [L,R=301]В таком случае редиректит на пустую страницу поиска.

Как настроить правильно, как передать только саму переменную =(
0
locker
0
locker   11.09.2017 16:47
Рабочий вариант =)
RewriteCond %{QUERY_STRING} (^|\&)search\=([^&]+)
RewriteRule ^search\.php$ /search?s=%2 [L,R=301]
Решение
sansan
0
sansan   11.09.2017 15:06
Пропишите проще, ни-фига не понятна проблема. Н-фиг вообще нужен поиск, есть google (или яндекс, по-крайности).
MainBah1
0
MainBah1   11.09.2017 15:34
Совсем не понятно, откуда берется трафик на старых страницах поисковой выдачи (они что где-то хранятся и индексируются)? Ну а если по существу...
RewriteRule ^search\.php\?search$ /search?s=%{QUERY_STRING}$1 [L,R=301] - вроде как должно работать
MainBah1
MainBah1   11.09.2017 16:34  
сори, туплю - не будет это работать и htacces тут не поможет

Войдите, чтобы написать ответ
Вход Регистрация


Garant.deals
Гарант сделок, всего 5% от суммы сделки.

Реклама здесь


ВЕЧНЫЕ ССЫЛКИ для Адалт / Фарм / Казино на самых трастовых площадках. Качество ВЫШЕ, цены НИЖЕ, чем у всех конкурентов.