Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« : 01.08.2008, 12:01:40 » |
|
Задача следующая: разрешить доступ по IP, остальных направлять на определенную страницу с сообщением "сайт на стадии разработки". С помощью .htaccess я делаю так: order deny,allow deny from all allow from 85.172.42.82
Но что прописать, чтобы остальные направлялись на index33.html (или offline.php, к примеру)? Такое возможно?
|
|
|
|
« Последнее редактирование: 01.08.2008, 14:30:32 от Sulpher »
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +77/-10
Offline
Пол: 
Сообщений: 1084
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #1 : 01.08.2008, 14:35:42 » |
|
может тут подсказку найдешь
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #2 : 01.08.2008, 16:23:52 » |
|
К сожалению, в документе ничего не сказано как поступать в таком случае...
|
|
|
|
|
Записан
|
|
|
|
|
|
|
beliyadm
|
 |
« Ответ #4 : 10.08.2008, 11:02:02 » |
|
ну там не совсем то, хотя в принципе можно аналогичное условие применить и для отлова IP адресов, используя $HTTP_SERVER_VARS["REMOTE_ADDR"]
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #5 : 10.08.2008, 11:22:36 » |
|
beliyadmin, приведёшь рецепт? 
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #6 : 10.08.2008, 11:33:10 » |
|
приведёшь рецепт?
как то так  <?php $clientip = $HTTP_SERVER_VARS["REMOTE_ADDR"]; if ($clientip == '127.0.0.1') { ?> <body>тут собственно весь код страницы</body> <?php } else { ?> <body> Ваш IP адрес не соответствует требованиям безопасности GOOGLE, на сайт не пустим </body> <?php } ?>
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #7 : 10.08.2008, 11:49:56 » |
|
А как добавить маску, если IP динамический? Например, меняются последние две цифры?
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #8 : 10.08.2008, 12:13:37 » |
|
А как добавить маску, если IP динамический? Например, меняются последние две цифры?
предлагаю в лоб порезать IP и смотреть по элементам: если заходить с локалхоста 127.0.0.1, то получим 4 элемента массива и дальше условия для них можно писать любые: $clientip = explode(".", $HTTP_SERVER_VARS["REMOTE_ADDR"]); $clientip[0] -> 127 $clientip[1] -> 0 $clientip[2] -> 0 $clientip[3] -> 1 if ($clientipх0х == '127' && $clientip[1] == '0' && $clientip[2] == '0' ) { ... Либо регуляркой вырезать все после 3-й точки, но по мне вариант с explode более гибкий
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #9 : 10.08.2008, 13:38:15 » |
|
Отлично! Держи плюс. 
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #10 : 10.08.2008, 13:41:07 » |
|
Отлично! Держи плюс.
усегда рад 
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #11 : 10.08.2008, 14:23:58 » |
|
А через mod_rewrite нельзя вопрос решить? Как-то вот так (правда, не уверен, что сработает): RewriteEngine On RewriteCond %{REMOTE_ADDR} !^111.22.33.44$ RewriteRule ^.*$ underconstruction.html [R,L]
Тут 111.22.33.44 — твой IP (за счет рег. выражений можно и диапазон сделать), underconstruction.html — страница, на которую остальные будут переадресованы.
|
|
|
|
|
Записан
|
|
|
|
|
beliyadm
|
 |
« Ответ #12 : 10.08.2008, 14:27:43 » |
|
А через mod_rewrite нельзя вопрос решить?
Можно конечно, но мне мой способ кажется более наглядным и доступным, не нужно делать лишних страниц, ломать htaccess (не про Sulpher, но если после кто-то решит использовать прием) В общем - на усмотрение Sulpher
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #13 : 10.08.2008, 14:36:31 » |
|
Решение, предложенное Physicist, очень даже ничего - достаточно добавить пару строк в .htaccess, не трогая index.php шаблона. А переадресацию можно поставить на offline.php Тут 111.22.33.44 — твой IP (за счет рег. выражений можно и диапазон сделать) Подскажи, плиз, пример реализации диапазона при помощи регулярных выражений? Нужно что-то типа 111.22.xx.xx - последние динамически меняются.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #14 : 10.08.2008, 14:44:09 » |
|
Подскажи, плиз, пример реализации диапазона при помощи регулярных выражений? Нужно что-то типа 111.22.xx.xx - последние динамически меняются.
Ну, тогда замени !^111.22.33.44$ на !^111.22.
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #15 : 10.08.2008, 14:47:19 » |
|
Отлично, отлично!  Теперь можнот отлаживать готовый проект, выводя всем остальным посетителям информацию о том, что сайт на реконструкции. Physicist, beliyadmin, спасибо за решения!
|
|
|
|
|
Записан
|
|
|
|
BadD
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 18
|
 |
« Ответ #16 : 05.11.2008, 02:24:31 » |
|
А не подскажите как сделать так, чтобы все кроме определенной группы IP при запросе например ftp://xxx.xx/[будет меняться]/ по ссылке с сайта перенаправлялись на http://xxx.xx
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #17 : 05.11.2008, 11:55:42 » |
|
Протокол ftp не поддерживает возможность переадресации на другой url.
|
|
|
|
|
Записан
|
|
|
|
BadD
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 18
|
 |
« Ответ #18 : 06.11.2008, 00:35:33 » |
|
Тогда может есть какой нибудь механизм подмены ссылок? для определенной группы IP одна ссылка - для остальных другая
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #19 : 07.11.2008, 10:31:48 » |
|
Есть, например, мамботы, позволяющие скрывать ссылки от незарегистрированных пользователей — можно в этом направлении покопать...
|
|
|
|
|
Записан
|
|
|
|
|
palexa
|
 |
« Ответ #20 : 15.03.2010, 02:20:29 » |
|
Есть, например, мамботы, позволяющие скрывать ссылки от незарегистрированных пользователей — можно в этом направлении покопать...
А Вы бы не могли поделиться где подобный плагин для Joomla 1.5 можно скачать в этой теме
|
|
|
|
|
Записан
|
|
|
|
ArtTeam
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 144
|
 |
« Ответ #21 : 06.12.2010, 13:57:10 » |
|
если у меня в корне тока есть htaccess то его надо переименовать .htaccess или надо создавать новый .htaccess для блокировки IP
|
|
|
|
|
Записан
|
|
|
|
|
palexa
|
 |
« Ответ #22 : 06.12.2010, 16:46:22 » |
|
нет, всё писать в одном файле, который лежит в корне
|
|
|
|
|
Записан
|
|
|
|
ArtTeam
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 144
|
 |
« Ответ #23 : 06.12.2010, 17:39:48 » |
|
Подскажите что именно надо прописать в htaccess.txt для блокировки IP, желательно с редериктом. Это что то у меня не работает ######### Начало блокировки IP адресов # Далее вставлены IP адреса вредители, спмеры и т.д. несколько адресов - 100.99.99.1 100.99.99.2 # Если вместо 100.99.99.1 написать 100.99.99, то доступ будет запрещен для всей сети класса C Order allow, deny Allow from all Deny from 127.0.0.1 ########## Конец блокировки IP адресов
|
|
|
|
|
Записан
|
|
|
|
|
palexa
|
 |
« Ответ #24 : 06.12.2010, 19:56:36 » |
|
htaccess.txt переименовать в .htaccess
|
|
|
|
|
Записан
|
|
|
|
|
palexa
|
 |
« Ответ #25 : 06.12.2010, 19:59:14 » |
|
Средствами файла .htaccess можно ограничить доступ к ресурсам сайта по IP адресам; например, разрешить доступ к медиа-архиву только пользователям из локальной сети, или запретить какому-либо хосту или сети доступ к какому-либо контенту.
Синтаксис для этих директив таков:
Order Deny,Allow (или Allow,Deny – в зависимости от того, что требуется) Deny from all (или адрес хоста) Allow from all (или адрес хоста)
Например, Order Deny,Allow Deny from all Allow from 192.168.0. Allow from .localnet Allow from admin.somewhere.in.the.net вызывает отказ в доступе для всех, кроме сети 192.168.0.0/24, всех хостов, DNS имя которых содержит .localnet, а также хоста, DNS имя которого admin.somewhere.in.the.net.
Если нужно запретить доступ группе хостов, используется Allow,Deny: Order Allow,Deny Allow from all Deny from 192.168.1. Deny from hackers.are.everywhere.in.the.net
Принцип прост. По Order определяется порядок обработки правил allow/deny; если мы возьмем второй пример, то сначала сервер обработает правило allow from all, а затем хосты, которые прошли это правило, подвергаются проверке правилом deny; при этом все хосты из сети 192.168.1.0/24 и хост hackers.are.everywhere.in.the.net не проходят эту проверку и не получают доступа.
Более сложные применения: <FilesMatch "\.(txt|dat)$"> Order Deny,Allow Deny from all </Files> – данное правило запретит любым хостам доступ к файлам с расширениями .txt и .dat (например, в них могут храниться внутренние данные скриптов).
|
|
|
|
« Последнее редактирование: 06.12.2010, 20:02:29 от palexa »
|
Записан
|
|
|
|
|