<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

В начале курса у нас будет только идея, а в конце готовый продукт, который можно использовать в практических целях.

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Использование RewriteCond в mod_rewrite

Использование RewriteCond в mod_rewrite

В прошлый раз мы с Вами использовали mod_rewrite для запрета доступа к файлу. Очень важным моментом было то, что исключений не делалось, то есть запрет доступа абсолютно для всех. Однако, mod_rewrite позволяет нам задать условия через RewriteCond, при выполнении лишь которых будет выполнено правило в RewriteRule.

Давайте с Вами разберём следующий пример:

RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^127.0.0.1$
RewriteRule ^secret.php$ - [F]

В директиве RewriteCond указываются условия, выполнив которые, будет вызвано правило. Мы написали, что если IP-адрес (конструкция %{REMOTE_ADDR}) не является 127.0.0.1 (регулярное выражение "!^127.0.0.1$"), то в этом случае надо вызвать RewriteRule и закрыть доступ к файлу.

Разберём ещё один пример с использованием RewriteCond:

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^127.0.0.1$ [OR]
RewriteCond %{REMOTE_ADDR} ^127.0.0.2$
RewriteRule ^secret.php$ - [F]

В данном случае мы уже написали два условия. Для того, чтобы выполнялось правило, необходимо выполнение всех предшествующих перед ним условий. Но если мы поставим флаг [OR], то тогда достаточно выполнения либо этого условия, либо следующего за ним.

Помимо флага [OR], есть флаг [NC] - означающий игнорирование регистра символов. В случае, с IP-адресом он смысла не имеет. Поэтому давайте с Вами разберём ещё следующий пример:

RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://(www\.)?example1\.com/.*$ [NC, OR] RewriteCond %{HTTP_REFERER} ^http://(www\.)?example2\.com/.*$ [NC] RewriteRule ^secret.php$ - [F]

В данном примере мы запретили доступ к файлу secret.php, если пользователь пришёл с сайта example1.com или example2.com.

Как видите, использование RewriteCond в mod_rewrite совсем не трудное занятие. Единственная проблема здесь - это регулярные выражения. Если Вы их ещё не умеете писать, то обязательно пройдите этот курс - там регулярные выражения подробно разбираются.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (1):

Dima2000%. Dima2000%. 24.02.2014 20:23:02

Спасибо за статью!

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.