Назад | Перейти на главную страницу

Как исключить IP из перенаправления домена htaccess

Я пытаюсь написать собственное правило перенаправления для некоторых целей тестирования на 2 доменах с точно таким же сайтом. Я использую следующий код:

  RewriteEngine on
  RewriteCond %{REMOTE_ADDR} !^1\.2\.3\.4$
  RewriteCond %{HTTP_HOST} ^.*site1.com [NC]
  RewriteRule ^(.*)$ http://www.site2.com/$1 [R=301,L]

Я хочу перенаправить все запросы для site1 на site2, кроме запросов с IP-адреса 1.2.3.4. Но в настоящее время запросы с этого IP-адреса также перенаправляются на site2.

Что-то я упустил в настройках?

(примечание: оба домена находятся на одной учетной записи общего хостинга)

РЕДАКТИРОВАТЬ: Я также пробовал:

RewriteEngine on
  RewriteCond %{REMOTE_ADDR} !^my_ip$ [OR]
  RewriteCond %{REMOTE_ADDR} !^server_ip$
  RewriteCond %{HTTP_HOST} ^.*site1 [NC]
  RewriteRule ^(.*)$ http://site2/$1 [R=301,L]

RewriteEngine on
  RewriteCond %{REMOTE_ADDR} !=my_ip [OR]
  RewriteCond %{REMOTE_ADDR} !=server_ip
  RewriteCond %{HTTP_HOST} ^.*site1 [NC]
  RewriteRule ^(.*)$ http://site2/$1 [R=301,L]

RewriteEngine on
  RewriteCond %{REMOTE_ADDR} ^my_ip$ [OR]
  RewriteCond %{REMOTE_ADDR} ^server_ip$
  RewriteRule ^(.*)$ http://site1/$1 [L]

  RewriteCond %{HTTP_HOST} ^.*site1 [NC]
  RewriteRule ^(.*)$ http://site2/$1 [R=301,L]

Это не проверено, но попробуйте это для части remote_addr

RewriteCond %{REMOTE_ADDR} !=1.2.3.4