htaccess RewriteCond помощь для новой разработки сайта - PullRequest
0 голосов
/ 02 марта 2012

У меня возникла реальная проблема, и я надеюсь, что кто-то может мне помочь - позвольте мне объяснить:

У меня есть сайт - domain.co.uk - в течение последних 6 месяцев этот сайт былсидел на удерживающих страницах, чтобы гугл узнал домен.У меня также есть domain.com и domain.org - они также были настроены одновременно.У нас разрабатывается новый веб-сайт с использованием мультисайтовой установки Drupal, где все мультисайты являются поддоменами.

Вот моя проблема !!Новый веб-сайт находится в стадии разработки, и мне нужно добавить различные правила в htaccess, чтобы перенаправить обратно на удерживающие страницы, но эти правила являются новыми для меня, и я действительно не имею понятия, что я делаю!

Этоэто то, что мне нужно сделать: основной домен - domain.co.uk.Мне нужно перенаправить всех пользователей, запрашивающих domain.co.uk, на domain.co.uk/holding/index.php, но мне нужно добавить исключение IP-адресов для нас и разработчиков для тестирования нового сайта, чтобы мы могли видеть, чтопродолжается с новым сайтом.На веб-сайте также есть псевдоним .com, и для всех запросов нужно перейти на domain.co.uk.

Итак, вот что у меня есть, и оно не работает должным образом:


// I set this to re-write anything except the subdomains I want to see
RewriteCond %{HTTP_HOST} !^(www.domain\.co\.uk)|(subdomain1.domain\.co\.uk)|(subdomain2.domain\.co\.uk)|(subdomain3.domain\.co\.uk)$ [NC]
RewriteRule (.*)$ http://www\.domain\.co\.uk%{REQUEST_URI} [R=302,L]

 // then I have put in some rules for checking the ip's and producing a redirect that does not match earlier requests.
RewriteCond %{REMOTE_HOST} !^(xx\.xxx\.xxx\.xx)|(xx\.xx\.xx\.xx)$
RewriteCond %{REQUEST_URI} !/holding/index\.php$ [NC]
RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif|css) [NC]
RewriteRule ^(.*)$ /holding/index\.php [R=302,L]

Результат на данный момент таков:

, если обычный пользователь переходит на domain.co.uk, он перенаправляет на удерживающую страницу - ХОРОШО, если пользователь из «исключенных IP-адресов»список адресов переходит на domain.co.uk, они также перенаправляются - BAD - но если они идут на .domain.co.uk / index.php, сайт Drupal загружается с новым дизайном.Если пользователь из списка исключенных IP-адресов переходит на subdomain1.domain.co.uk, он перенаправляется на удерживающие страницы - BAD - это, я думаю, не должно происходить из-за 1-го правила, но я полностью потерян.

У кого-нибудь есть идеи, как заставить это работать, чтобы пользователь с разрешенным ip мог получить доступ к новому веб-сайту и всем его поддоменам, но любой обычный пользователь направлен на удерживающие страницы.

Большое спасибо - моя головавот-вот взорвется !!

1 Ответ

0 голосов
/ 02 марта 2012

${REMOTE_ADDR} - это IP-адрес, ${REMOTE_HOST} - это имя хоста, если доступно.

Вы также можете временно добавить $ {REMOTE_ADDR} в перенаправление на удерживающую страницу, чтобы проверить, правильно ли вы вводитеадреса, например:

RewriteRule ^(.*)$ /holding/index\.php?ip=${REMOTE_ADDR} [R=302,L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...