.htaccess редирект _ на -

B
На сайте с 31.01.2012
Offline
125
468

Привет,

наткнулся на старые грабли (просто не знал о такой проблеме)

насоздавал поддоменов с нижним подчеркиванием

my_subdomen.mysite.ru

И только сейчас, после индексации ПС узнал, что такие адреса некорректны.

Помогите, пожалуйста, создать запись в htaccess с 301 редиректом

с

my_sub_domen.mysite.ru

на

my-sub-domen.mysite.ru

С регулярками у меня тяжело совсем...

Спасибо!

siv1987
На сайте с 02.04.2009
Offline
427
#1

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

RewriteCond %{HTTP_HOST} ^(www\.)?([^.]+)_([^.]+)\.site\.ru

RewriteRule (.*) http://%1%2-%3.site.ru/$1 [R=301]

количество редиректов в данном случае будет соответствовать количество подчеркиваний.

my_sub_domen.mysite.ru => [R] my-sub_domen.mysite.ru => [R] my-sub-domen.mysite.ru

B
На сайте с 31.01.2012
Offline
125
#2

Спасибо. Понятно.

Стало быть проще в лоб на php сделать (взять текущий url , заменить _на- и в headere прописать 301)...

siv1987
На сайте с 02.04.2009
Offline
427
#3

Да. В лоб проще на php, в данном случае.

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