Переадресация запроса htaccess, если внутренний ip
-
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]