Pinpon

Pinpon
Рейтинг
52
Регистрация
26.11.2006

Хочу еще вас предупредить что конкуренция среди сервисов типа твиттер довольно большая, а вот спрос на них, как мне кажется, не такой уж и большой. Вот например Российские школьники запустили свой аналог twitter`а, самописный на собственном движке http://habrahabr.ru/post/198648/

Конкретного движка не порекомендую, но дам пару ссылок из избранного, сам както раньше думал замутить свой твиттер :) :


Как из WordPress сделать Twitter

Обзор CMS для сервиса микроблоггинга

Наколько я понял ТЗ такое:

Т.е. допустим 255.255.255.255 это ваш интернет адрес (IP), вас должно пускать на domen1.com и не должно пускать на domen2.com (должно редиректить на domen1.com), а всех других наоборот, должно пускать на domen2.com, и не пускать на domen1.com

Исходя из этого условия, будут работать сдедующие правила:


RewriteCond %{REMOTE_ADDR} ^888\.888\.888\.888$
RewriteCond %{HTTP_HOST} ^(www\.)?domen2\.com
RewriteRule ^(.*)$ http://www.domen1.com/$1 [R=301,L]

RewriteCond %{REMOTE_ADDR} !^888\.888\.888\.888$
RewriteCond %{HTTP_HOST} ^(www\.)?domen1\.com
RewriteRule ^(.*)$ http://www.domen2.com/$1 [R=301,L]

Замените 888.888.888.888 на свой интернет адрес (тот что показывает на http://internet.yandex.ru/), domen1.com на тот домен на который вас должно пускать, а domen2.com замените на домен куда вас пускать не должно, если это заработает, то останеться только вместо конкретного адреса прописать диапазон IP, если незаработает то значит я неправильно понял ТЗ либо вы чтото недоговариваете

p.s.

Незабывайте про кеш браузера, и про то что кеш редиректов не всегда очищаеться при очистки кеша (в Opera это особенно актуально).

Редиректы лучше всего проверять через консоль:

curl -I http://domen1.com
Балгынбаев Дастан:

3. Условие должно быть таким, чтобы люди из определенного пула адресов видели сайт по одному домену, а другие по другому.

А сайт сейчас может открываться с двух разных доменов и полноценно работать на каждом из них? Т.е. созданы конфиги виртуальных хостов, натравленные на одну папку сайта, и сам движок сайта расчитан на два разных домена?

Так, давайте разберемся, а то какаято путаница получаеться:

1. Сайт находиться в интернете, на какомто хостинг провайдере или дома на локальной машине в локальной сети?

2. Здесь http://internet.yandex.ru/ показывает такойже адрес как и интернет адрес на роутере?

3. Условие для диапазона IP адресов должно быть позитивным или негативным?

Балгынбаев Дастан:
Дело в том, что когда делаю:
RewriteCond %{REMOTE_ADDR} !=192.168.1.2
RewriteRule ^(.*)$ http://www.domen.ru/$1 [R=301,L]
все работает как надо, но когда делаю как советуете вы:
RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.
RewriteCond %{HTTP_HOST} !^site\.org$
RewriteRule ^(.*)$ http://site.org/$1 [R=301,L]
Выдает ошибку 404 обратные слэши может?

В первом варианте у вас негативное условие, не равно 192.168.1.2

RewriteCond %{REMOTE_ADDR} !=192.168.1.2

а во втором, позитивное условие, равно 192.168.1.*

RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.

+ негативное условие для домена

RewriteCond %{HTTP_HOST} !^site\.org$

Соответственно в первом случае если ваш адрес не равен 192.168.1.2, то происходит редирект.

А во втором случае редирект произойдет если ваш адрес в диапазоне 192.168.1.* и сайт не равен site.org

Балгынбаев Дастан:
Редиректа нет, адрес тот, на модеме смотрю, вот что не так не могу понять

Можно поинтересоваться на каком модеме вы его смотрите? Адреса диапазона 192.168.*.*. это локальные адреса и в интернете их быть не может, соответственно если вы про интернет модем говорите то адреса 192.168.*.* там быть не могут, вы наверное смотрите не интернет адрес, а локальный адрес

---------- Добавлено 27.11.2013 в 20:47 ----------

Интернет адрес можно посмотреть например тут http://internet.yandex.ru/

Балгынбаев Дастан:
Не идет так...

Не идет, всмысле непроисходит редирект, или ошибка возникает?

А так:


RewriteCond %{HTTP:X-FORWARDED-FOR} ^192\.168\.1\.
RewriteCond %{HTTP_HOST} ^site\.com
RewriteRule ^(.*)$ http://site.org/$1 [R=301,L]

RewriteCond %{HTTP:X-FORWARDED-FOR} ^192\.168\.1\.
RewriteCond %{HTTP_HOST} ^www.site\.com
RewriteRule ^(.*)$ http://site.org/$1 [R=301,L]

Например так:


RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.
RewriteCond %{HTTP_HOST} ^site\.com
RewriteRule ^(.*)$ http://site.org/$1 [R=301,L]

RewriteCond %{REMOTE_ADDR} ^192\.168\.1\.
RewriteCond %{HTTP_HOST} ^www.site\.com
RewriteRule ^(.*)$ http://site.org/$1 [R=301,L]

Подряд стоящие несколько правил RewriteCond, по умолчанию работают как AND условие

Все проблемы испарились как ветер когда сделал MoneyBack :D

А проблема была в том что они очень сильно придераются к кредиткам...

на этом они и погорят...😡