Вернуться   Форум об интернет-маркетинге > >
Закрытая тема
 
Опции темы
Старый 30.11.2015, 13:45   #31
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: Как сделать редирект (301, 302). Общая тема

RewriteRule ^page35$ /elektromontazh? [R=301,L]
добавить после RewriteEngine on
siv1987 вне форума  

Реклама
Старый 30.11.2015, 14:53   #32
v1tosh
Абитуриент
 
Регистрация: 30.11.2015
Сообщений: 2
Репутация: 10

По умолчанию Re: Как сделать редирект (301, 302). Общая тема

Спасибо большое! Всё отлично работает.
v1tosh вне форума  
Старый 30.11.2015, 15:51   #33
SeVlad
Guru-Editor
 
Регистрация: 03.11.2008
Адрес: Donbass
Сообщений: 17,698
Репутация: 1437637

ТопикСтартер Re: Как сделать редирект (301, 302). Общая тема

Цитата:
Сообщение от siv1987 Посмотреть сообщение
RewriteCond %{HTTP_HOST} ^(www\.)?site\.ru$
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /\ HTTP/
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /(myurl|mydir/)
RewriteRule ^(.*) http://old.site.ru/$1 [R=301,L]

Как-то так
Сорри, я потерял ещё одно условие .
Надо что бы НЕ редиректилось с /anydir/ любой вложенности.

Что бы не листать топик, повторю.
Надо редеректить с www.site.ru и site.ru отредиректить на поддомен old.site.ru пхпшные урлы. Они могут быть с параметрами и без оных. Т.е. вида

Код:
/anyurl.php
/anyurl.php?anypar=anyvar&anypar2=anyvar2
/?anypar=anyvar&anypar2=anyvar2
/anydir/anyurl.php?anypar=anyvar&anypar2=anyvar2
/anydir/?anypar=anyvar&anypar2=anyvar2
те с расширением php и/или с параметрами.

При этом не редиректить морду сайта и урлы с параметрами из определённых каталогов (с подкаталогами) - mydir, а также с любые урлы без расширений файла и без параметров.
Те НЕ редиректить вида:

Код:
/myurl.php?anypar=anyvar&anypar2=anyvar2
/mydir/myurl.php?anypar=anyvar&anypar2=anyvar2
/mydir/?anypar=anyvar&anypar2=anyvar2
/anydir/
/anydir
тут /anydir (/anydir/) может быть любой вложенности, но без параметров.
__________________
Делаю сайты для людей. Предпочтение коммерческим направлениям.
Топики помощи с ⓌordPress и основы безопасности сайтов.
*** Помощь\консультации в топиках форума - БЕСПЛАТНО. Через личку - с бюджетом от 150$ ***
SeVlad вне форума  
Старый 30.11.2015, 16:02   #34
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: Как сделать редирект (301, 302). Общая тема

anydir любой вложенности
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /(myurl|(.+/)?anydir/)

или

RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ (/myurl|.*?/mydir/)
siv1987 вне форума  
Старый 30.11.2015, 16:36   #35
SeVlad
Guru-Editor
 
Регистрация: 03.11.2008
Адрес: Donbass
Сообщений: 17,698
Репутация: 1437637

ТопикСтартер Re: Как сделать редирект (301, 302). Общая тема

Цитата:
Сообщение от siv1987 Посмотреть сообщение
anydir любой вложенности
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /(myurl|(.+/)?anydir/)

или

RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ (/myurl|.*?/mydir/)
не, anydir не известно же (это ЧПУ, мб так понятней).
mydir - известное, тут всё сходится.
SeVlad вне форума  
Старый 30.11.2015, 21:22   #36
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: Как сделать редирект (301, 302). Общая тема

Цитата:
Сообщение от SeVlad Посмотреть сообщение
не, anydir не известно же (это ЧПУ, мб так понятней).
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /(myurl|.+?/)

Цитата:
Сообщение от SeVlad Посмотреть сообщение
не, anydir не известно же (это ЧПУ, мб так понятней)
не очень. Лучше словами объясните. anydir, mydir... либо anydir либо mydir.
siv1987 вне форума  
Старый 01.12.2015, 09:03   #37
KrAB
Аспирант
 
Регистрация: 24.07.2007
Сообщений: 111
Репутация: -807

По умолчанию Re: Как сделать редирект (301, 302). Общая тема

Код:
RewriteCond %{HTTP_HOST} ^(?:www\.)?xn--e1afmkfd\.xn--p1ai$
RewriteRule ^ http://mysite.ru/пример-рф/? [R=302,L]
Как сделать, чтобы пример.рф/*любыесимволы* редиректил на mysite.ru/пример-рф, чтобы эти *любыесимволы* отсекались при редиректе?
KrAB вне форума  
Старый 01.12.2015, 09:45   #38
SeVlad
Guru-Editor
 
Регистрация: 03.11.2008
Адрес: Donbass
Сообщений: 17,698
Репутация: 1437637

ТопикСтартер Re: Как сделать редирект (301, 302). Общая тема

Цитата:
Сообщение от siv1987 Посмотреть сообщение
Лучше словами объясните. anydir, mydir... либо anydir либо mydir.
С site.ru старый самописный сайт перенесён в old.site.ru. Его урлы - просто пхп файлы (с расширением .php) и урлы с параметрами (где с расширением, где без).

На site.ru делается новый сайт с ЧПУ. В ЧПУ нет параметров в урлах. Но может быть со вложенной структурой (site.ru/любой_набор_допустимых_символов/любой_набор_допустимых_символов/название_статьи/).

Хочется автоматом редиректить старые урлы на old и, ессно, не трогать новые.

НО! В определённых каталогах (админка и ещё 2-3, заранее известных) передаётся ГЕТ с параметрами. Тут уже редирект не нужен же.

Надеюсь, стало понятней
SeVlad вне форума  
Старый 01.12.2015, 16:08   #39
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: Как сделать редирект (301, 302). Общая тема

Редирект любых ссылок с параметрами не с /myurl.php или /mydir/

RewriteCond %{HTTP_HOST} ^(www\.)?site\.ru$
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /\ HTTP/
RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ /(myurl.php|mydir/)
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\?
RewriteRule ^(.*) http://old.site.ru/$1 [R=301,L]
siv1987 вне форума  
Старый 02.12.2015, 09:21   #40
SeVlad
Guru-Editor
 
Регистрация: 03.11.2008
Адрес: Donbass
Сообщений: 17,698
Репутация: 1437637

ТопикСтартер Re: Как сделать редирект (301, 302). Общая тема

Цитата:
Сообщение от siv1987 Посмотреть сообщение
Редирект любых ссылок с параметрами не с /myurl.php или /mydir/
То ли я объяснил не так, то ли ты не так понял
В общем так ЧПУшные ссылки (site.ru/название_статьи/ , site.ru/любой_набор_допустимых_символов/любой_набор_допустимых_символов/название_статьи/) тоже будет редиректить, а этого не нужно.

АПД. Старые урлы, которые нужно редиректить, отличаются от новых (ЧПУшных, которые не нужно редиректить) наличием *.php и/или параметров. Редиркет должен работать везде, кроме определённых каталогов/названий файлов.

Последний раз редактировалось SeVlad; 02.12.2015 в 10:21..
SeVlad вне форума  
Закрытая тема

Метки
.htaccess , 301 , 301 redirect , apache , htaccess , htaccess 301 редирект , htpps , mod_rewrite , osclass , wordpress , редик 100500 , редирект , склейка выдачи



Опции темы

Быстрый переход


Регистрация Справка Календарь Поддержка Все разделы прочитаны