2014-02-11 1 views
1

Здравствуйте ~ это мой первый пост на StackOverflow.htaccess перенаправление с хостом и IP-адресом

Мы пытаемся удовлетворять следующие критерии в нашем файле .htaccess:

Если вы не в определенном диапазоне IP-адрес (111.222.xxx.xxx) и HTTP хост test.com, а затем принять пользователь test.com/goodbye:

RewriteCond %{REMOTE_ADDR} !^111\.222 
RewriteCond %{HTTP_HOST} ^test\.com$ 
RewriteRule ^.*$ http://test.com/goodbye [R=301,L] 

Если вы находитесь в определенном диапазоне IP-адресов (111.222.xxx .xxx), а хост https - test.com, затем возьмите пользователя на test.com/hello:

RewriteCond %{REMOTE_ADDR} ^111\.222 
RewriteCond %{HTTP_HOST} ^test\.com$ 
RewriteRule ^.*$ http://test.com/hello [R=301,L] 

Независимо от того, какой IP-адрес я использую, я принимаю/привет. Я предполагаю, что первое условие так или иначе сработало?

ответ

1

Reverse правила и сделать регулярное выражение более строгим:

RewriteCond %{REMOTE_ADDR} ^111\.222\. 
RewriteCond %{HTTP_HOST} ^test\.com$ 
RewriteRule !^hello /hello [R=301,L] 

RewriteCond %{REMOTE_ADDR} !^111\.222 
RewriteCond %{HTTP_HOST} ^test\.com$ 
RewriteRule !^goodbye /goodbye [R=301,L] 
+0

Спасибо за Ваш комментарий анубхава ~ Я считаю, что моя проблема может быть связана с кэшированием браузера. Мы пытаемся показать людям сообщение, если они находятся в определенном диапазоне IP, чтобы войти в VPN. После входа в систему должна загрузиться другая страница. – user1967926

+0

GLAD знать. Вы можете отметить ответ, принятый, чтобы помочь будущим посетителям. – anubhava

Смежные вопросы