Редирект со страницы с логическим и - возможно?

kazi_mir
На сайте с 08.09.2010
Offline
39
392

У меня на одном из сайтов идут кучи страниц, на конце которых знак & - символ склеивания get-запросов

Пример:

stranica/?page=2&

И все страницы такого вида есть в поиске Яндекса!

Сейчас запускается новый сайт и нужно сделать 301 редиректы с таких вариантов написания на другие страницы.

Как можно сделать этот редирект? .htaccess не реагирует на логическое и никак. Редиректный модуль в CMS тоже.

Может быть есть какие-то еще варинты, с помощью которых можно сделать? Кто-нибудь сталкивался с этим или может что-н. посоветовать?

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#1

RewriteCond %{QUERY_STRING} !(&)$

Если строка запроса не заканчивается на амперсанд

Подпись))
gormarket
На сайте с 29.12.2010
Offline
47
#2

Через .htaccess это вполне реально сделать.

RewriteRule в .htaccess действительно не реагирует на то, что в адресе находится после вопросительного знака.

Потому что он работает со значением, находящимся в %{REQUEST_URI} (то что до знака вопроса), а нужно обрабатывать %{QUERY_STRING} (то что после знака вопроса).

Это делается с помощью условий RewriteCond

Где-то так

RewriteCond %{QUERY_STRING} ^(.*)&+$

RewriteRule ^.*$ http://%{HTTP_HOST}/$0?%1 [R=301,L]

Это если не будут влиять другие правила реврайтов в этом же .htaccess

Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий