• Главная
  • Услуги
  • Портфель
  • Контакты
  • Шпаргалка по mod_rewrite

    Шпаргалка по mod_rewrite

    Шпаргалка по mod_rewrite содержит список флагов для директив RewriteRule и RewriteCond, список серверных переменных, руководство по регулярным выражениям и несколько примеров общих правил. Шпаргалка представлена в виде таблицы, помещающейся на одном печатном листе формата A4. Автором оригинальной версии шпаргалки является Dave Child. А распространяется она под лицензией Creative Commons.

    Синтаксис регулярных выражений

    Синтаксис регулярных выражений

    Интерпретация URL с помощью модуля mod_rewrite вообще говоря требует основательных знаний и понимания регулярных выражений. В директиве RewriteRule обширно применяются шаблоны регулярных выражений. В этом руководстве схематично описаны основы их синтаксиса.

    Флаги RewriteRule и RewriteCond

    Флаги RewriteRule и RewriteCond

    К правилам mod_rewrite могут прилагаться флаги, сообщающие серверу, как именно должна производиться обработка URL. Например, флаг «L» говорит серверу прекратить обработку остальными правилами, если обозначенное правило было применено.

    Условия mod_rewrite также могут включать в себя флаги. Опять же, они сообщают серверу, как нужно их интерпретировать. Флаг «NC» показывает, что выполнение условия не должно зависеть от регистра, а флаг «OR» между условиями говорит серверу, что следующее правило должно быть применено, если любое из предшествующих условий выполнено. По умолчанию же mod_rewrite работает так, что правило срабатывает, только если все предыдущие условия выполнены.

    Коды заголовков перенаправления

    Коды заголовков перенаправления

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

    Примеры правил

    Примеры правил

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

    Серверные переменные

    Серверные переменные

    Иногда необходимо интерпретировать URL, основываясь на переменных вроде адреса, с которого был совершен переход, или используемого браузера. Эти переменные вполне могут быть использованы в mod_rewrite (включая директивы RewriteRule и RewriteCond). Все они указаны этой части шпаргалки.

    Директивы

    Директивы

    Модуль mod_rewrite предоставляет серверу набор инструкций, называемых директивами. Например, «RewriteEngine On» сообщает Apache о необходимости обработать правила RewriteRules, если таковые найдутся. Здесь просто приведен список директив, применяемых в mod_rewrite.