Переадресация запроса htaccess, если внутренний ip

StackOverflow https://stackoverflow.com/questions/258680

  •  06-07-2019
  •  | 
  •  

Вопрос

Существует ли возможная директива htaccess, которая может прозрачно пересылать запрос из index.php в index_internal.php, если запрос поступает из внутреннего диапазона ip?

Это было полезно?

Решение

RewriteEngine on

RewriteCond %{REMOTE_ADDR} ^192\.168\.1\. [OR]
RewriteCond %{REMOTE_ADDR} ^10\.15\.
RewriteRule ^index\.php$ index_internal.php [R,NC,QSA,L]

Что это делает:

запустите модуль mod_rewrite (возможно, он уже есть)

if (IP-адрес клиента начинается с " 192.168.1. " [или]

IP-адрес клиента начинается с " 10.15. ")

и имя страницы - index.php ([n] ot [c] как чувствительный), [r] перенаправляет на index_internal.php, [q] uery [s] tring [a] ppend (т.е. index. php? foo = bar становится index_internal.php? foo = bar ), [l] обработка eave.

Измените при необходимости для блоков IP-адресов.

Другие советы

Нечто подобное должно сделать это (очевидно, измените IP-адрес в соответствии с вашей сетью):

RewriteCond %{REMOTE_ADDR} ^192\.168\.
RewriteRule index.php index_internal.php

Если вам нужен фактический заголовок, сделайте его RewriteRule index.php index_internal.php [L, R, QSA]

Хорошо, вот мой код (без перенаправления), основанный на списке частной сети Википедии

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^10\. [OR]
RewriteCond %{REMOTE_ADDR} ^172\.[1-3]{1}\d{1}\. [OR]
RewriteCond %{REMOTE_ADDR} ^192\.168\.
RewriteRule ^index\.php index_internal.php [NC,QSA,L]
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top