Доступ с определенных IP адрессов

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем CheburatoR-all, 26 авг 2010.

Статус темы:
Закрыта.
  1. CheburatoR-all

    CheburatoR-all Гипножаба

    Регистр.:
    26 апр 2009
    Сообщения:
    296
    Симпатии:
    437
    Здравствуйте! ;) Требуется помощь. Нужно разрешить доступ к определенной директории (+дочерним) только определенным подсетям. Всех остальным показывать нотайс (не ошибку 404) или редиректить к определенной странице. ;)
     
  2. ShoxMaster

    ShoxMaster

    Регистр.:
    3 дек 2008
    Сообщения:
    393
    Симпатии:
    150
    Код:
    RewriteEngine on
    RewriteCond %{REMOTE_HOST} ^127\.0\.0
    RewriteCond %{REQUEST_URI} !^(.*)Tools(.*)$
    RewriteRule ^(.*)$ /notice.php [R=301,L]
    
    У меня работает, вместо http://www.someothersite.com надо влепить страницу с нотайсом.
     
    CheburatoR-all нравится это.
  3. CheburatoR-all

    CheburatoR-all Гипножаба

    Регистр.:
    26 апр 2009
    Сообщения:
    296
    Симпатии:
    437
    А если к примеру у нас три подсети 127.1 и 127.2 128.3
    Код:
    RewriteEngine on
    RewriteCond %{REMOTE_HOST} ^(127|128)\.(1|2|3)
    RewriteCond %{REQUEST_URI} !^(.*)Tools(.*)$
    RewriteRule ^(.*)$ /notice.php [R=301,L]
    
    Но тогда получается открывается подсеть 127.3 :confused:
    UPD: Понял. Значит получается так?
    Код:
    RewriteEngine on
    RewriteCond %{REMOTE_HOST} ^(127\.0|127\.1|128\.3)
    RewriteCond %{REQUEST_URI} !^(.*)Tools(.*)$
    RewriteRule ^(.*)$ /notice.php [R=301,L]
    
    И еще, что за строка RewriteCond %{REQUEST_URI} !^(.*)Tools(.*)$? Эт чтоль проверка по реферу?
     
  4. ShoxMaster

    ShoxMaster

    Регистр.:
    3 дек 2008
    Сообщения:
    393
    Симпатии:
    150
    Не, это директория к которой есть доступ с нужных IP. Если выполнено условие в первом RewriteCond то идёт на эту строку; в принципе надо так:
    Код:
    RewriteCond %{REQUEST_URI} !^(.*)\/Tools\/(.*)$
    
    Если каталог в корне, первую маску (.*) можно убрать; вторая значит, что RewriteRule распостраняется на подкаталоги и файлы внутри директории.
     
    CheburatoR-all нравится это.
  5. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102

    проверка на попадание урла, который запрашивается клиентом, в твою поддиректорию (Tools).
     
Статус темы:
Закрыта.