We use cookies
We use cookies to optimize our website. By continuing to browse the site, you agree to our use of cookies.
Control panel
  • Русский
  • Українська
  • English
  • UAH
  • USD
  • RUB
  • EUR
  • 0-800-307-307 Hotline
  • +38 (044) 392-74-33 Kiev
  • +38 (057) 728-39-00 Kharkiv
  • +38 (056) 794-38-31 Dnipro
  • +38 (032) 229-58-93 Lviv
  • +38 (048) 738-57-70 Odessa
  • +38(093) 170-15-42  Life
  • +38 (067) 400-88-44 Kievstar
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7 (499) 348-28-61 Moscow

Hosting. 301 редирект: замена одного символа


tgr_85
9 months
0
301 редирект: замена одного символа

Здравствуйте.
На сайте было много url вида:

site.com/?p=123 (цифры разные)
site.com/?page_id=2 (цифры разные)
site.com/?paged=2 (цифры разные)
site.com/?cat=123 (цифры разные)
site.com/?cat=6&paged=2 (цифры разные)
site.com/?m=20110202 (цифры разные)

После некоторых манипуляций с сайтом все url изменились таким образом: ? (знак вопроса) поменялся на _ (нижнее подчеркивание). Т.е. стало так:

site.com/_p=123 (цифры разные)
site.com/_page_id=2 (цифры разные)
site.com/_paged=2 (цифры разные)
site.com/_cat=123 (цифры разные)
site.com/_cat=6&paged=2 (цифры разные)
site.com/_m=20110202 (цифры разные)

Подскажите, пожалуйста, как настроить в этом случае постраничный 301 редирект?

KarlovA
9 months
2

Попробуйте такой вариант:

RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{QUERY_STRING} ^([a-zA-Z_]+=[0-9]+&?)+$
RewriteRule ^ http://site.com/_%{QUERY_STRING}? [R=301,L]

Редирект будет срабатывать только при обращении к главной странице с любым количеством GET-параметров вида «буквы_или_подчёркивания=цифры».

Для других страниц или параметров, где вместо цифр будут другие символы, редирект выполняться не будет.

Правила лучше размещать в самом начале .htaccess.

tgr_85
9 months
0

Ваш способ работает, спасибо большое!

П.С. Судя по тому, сколько на форуме вопросов по 301 редиректу, может стоит как-то выделить этот вопрос в отдельный раздел или FAQ? Заодно и за поисковой трафик можно побороться по этой теме.

Only registered users.