Как закрыть один из доменов системы для внешних пользователей — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
Строка 1: Строка 1:
 +
'''Актуально для версии 2.9'''
 +
<br/>
 
Сделать это можно через файл .htaccess, прописав в нем, например,  следующее:
 
Сделать это можно через файл .htaccess, прописав в нем, например,  следующее:
 
<source lang="html4strict">
 
<source lang="html4strict">
Строка 24: Строка 26:
 
Строкой: RewriteCond %{REMOTE_ADDR} ! - '''разрешаем''' доступ с указанного IP-адреса.
 
Строкой: RewriteCond %{REMOTE_ADDR} ! - '''разрешаем''' доступ с указанного IP-адреса.
  
'''Актуально для версии 2.9'''
+
 
 
[[Категория:.htaccess]]
 
[[Категория:.htaccess]]

Версия 16:41, 5 июня 2013

Актуально для версии 2.9
Сделать это можно через файл .htaccess, прописав в нем, например, следующее:

RewriteEngine On
RewriteCond %{REMOTE_ADDR} !192.168.7.185
RewriteCond %{HTTP_HOST} www.domen.ru [NC]
RewriteRule (.+) http://domen_dlya_perenapravleniya.ru [L]

Пояснения: во второй строке указан ip, для которого нижеследуещее правило применяться не будет. В третьей - указываем домен, который хотим скрыть. В четвертой можно укакзать домен, на который мы будем перенаправлять пользователей, пытающихся открыть наш домен.

Если же у нас мультисайтовая система и нам нужно закрыть доступ только к определенным сайтам, то мы можем наоборот сначала всем запретить доступ, а затем указать те домены и IP-адреса с которых мы разрешаем открывать наши сайты:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} !^site1.ru
RewriteCond %{REMOTE_ADDR} !8.8.8.4

RewriteRule ^.*$ - [F,L]
</IfModule>

Пояснения: дописываем указанную конструкцию в конец файла .htaccess.
Строкой: RewriteCond %{HTTP_HOST} !^ - разрешаем доступ с указанного домена,
Строкой: RewriteCond %{REMOTE_ADDR} ! - разрешаем доступ с указанного IP-адреса.