MishGU

Рейтинг
50
Регистрация
29.07.2014

jkm, понял, спасибо большое!

jkm, спасибо!

а что означают значения || -R ?

и вот это "%2 \

и вот это что делает после яндекса " "^(\S+) .*? \1 => (\S+)" ?

Sitealert, да, с регулярными выражениями меньше получается , чем по CIDR )

условия по IP одинаковые, но условия по доменам, с которых редирект разные.

Как можно объединить условия по IP адерсам, подскажите, пожалуйста)

Sitealert, большое спасибо!

И ещё вопрос

можно ли вот эту часть заменить какой-то константой? у меня будет порядка 30 условий в этих строках

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

---------- Добавлено 12.03.2018 в 02:25 ----------

30 диапазонов айпи адресов

Sitealert, то есть вот это будет оптимально правильным написание?

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteCond %{HTTP_HOST} ^(www\.)?site1\.ru$ [NC]

RewriteRule ^ https://google.ru [R=301,L]

RewriteCond %{HTTP_HOST} !site\.ru [NC]

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteCond %{HTTP_HOST} ^(www\.)?site2\.ru$ [NC]

RewriteRule ^ https://yandex.ru [R=301,L]

RewriteCond %{HTTP_HOST} !site\.ru [NC]

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

---------- Добавлено 12.03.2018 в 02:21 ----------

Sitealert, а не, неправильно

вот так правильно, да?

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteCond %{HTTP_HOST} ^(www\.)?site1\.ru$ [NC]

RewriteRule ^ https://google.ru [R=301,L]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteCond %{HTTP_HOST} ^(www\.)?site2\.ru$ [NC]

RewriteRule ^ https://yandex.ru [R=301,L]

RewriteCond %{HTTP_HOST} !site\.ru [NC]

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Если правильно, то я понял логику))

jkm, спасибо! а какой вариант правильный из того, что я выше написал?

---------- Добавлено 12.03.2018 в 01:57 ----------

Sitealert, то есть в моих вариантах будет правильным второй вариант написания, верно?

---------- Добавлено 12.03.2018 в 02:03 ----------

У меня стоит Апач 2.4.10

Sitealert, подскажите, пожалуйста,

вот такая запись для моих условий будет правильна?

RewriteCond %{HTTP_HOST} ^(www\.)?site1\.ru$ [NC]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteRule ^ https://google.ru [R=301,L]

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www\.)?site2\.ru$ [NC]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteRule ^ https://yandex.ru [R=301,L]

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

---------- Добавлено 12.03.2018 в 01:13 ----------

Или вот так правильно

RewriteCond %{HTTP_HOST} ^(www\.)?site1\.ru$ [NC]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteRule ^ https://google.ru [R=301,L]

RewriteCond %{HTTP_HOST} ^(www\.)?site1\.ru$ [NC]

RewriteCond %{REMOTE_ADDR} ^!x\.x\.x\.x$

RewriteCond %{REMOTE_ADDR} ^!y\.y\.y\.y$

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www\.)?site2\.ru$ [NC]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$ [OR]

RewriteCond %{REMOTE_ADDR} ^y\.y\.y\.y$

RewriteRule ^ https://yandex.ru [R=301,L]

RewriteCond %{HTTP_HOST} ^(www\.)?site2\.ru$ [NC]

RewriteCond %{REMOTE_ADDR} ^!x\.x\.x\.x$

RewriteCond %{REMOTE_ADDR} ^!y\.y\.y\.y$

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Sitealert, супер! вы реально круто разбираетесь) я три дня со всеми админами техподдержки и со знакомыми админами пытаюсь решить этот вопрос и не получилось. Только Вы помогли, спасибо большое!

Может Вы сможете и подсказать, как решить такую задачу )

Много доменов привязано к одному сайту, как прописать такое условие:

если я захожу с ДОМЕН1 и айпи не Х.Х.Х.Х, то редирект на site.ru, а если айпи равны Х.Х.Х.Х, то редирект на google.com

далее

если я захожу с ДОМЕН2 и айпи не Х.Х.Х.Х, то редирект на site.ru, а если айпи равны Х.Х.Х.Х, то редирект на ya.ru

далее

если я захожу с ДОМЕН3 и айпи не Х.Х.Х.Х, то редирект на site.ru, а если айпи равны Х.Х.Х.Х, то редирект на rambler.ru

Sitealert, спасибо! а может привести пример со вторыми скобками, когда может использоваться?

Sitealert, понял, спасибо!

А чем отличается запись http://site.ru/$1 от http://site.ru ? что в данном случае даёт "$1" ?

---------- Добавлено 11.03.2018 в 23:52 ----------

если я делаю редирект на этот сайт

Всего: 95