karashchuk.com » Бібліотека Знань » Apache » .htaccess и его шаманства

Apache : .htaccess и его шаманства

Директивы REDIRECT


MOD_REWRITE
Модуль mod_rewrite сильнейшее средство для преобразований. Он позволяет делать порой немыслемые преобразования.

Директива RewriteEngine включает или выключает механизм преобразования.

RewriteEngige on | off   # по умолчанию off

RewriteCond - директива, определяющая условие при котором происходит преобразование. Последущее после директивы RewriteCond директива RewriteRule исполняется лишь при соблюдении условий RewriteCond.

$N предоставление доступа к сгруппированым частям (который в круглых скобках) шаблона RewriteRule. N - может быть от 0 до 9

%N предоставление доступа к сгруппированым частям (который в круглых скобках) шаблона RewriteCond. N - может быть от 0 до 9
 
${NameOfVariable} имя переменной, ниже приводиться список доступных с их кратким описанием
http_user_agent информация о типе и версии браузера, операционной системе (эта информацию пользователь может подменить)
http_referer url страниц с которой перешли на эту страницу
http_cookie список cookie, передаваемых браузером
http_forwarded страница
http_host адрес Вашего сервера
http_accept предпочтения относительно типа документа
remote_addr IP адрес посетителя
remote_user имя удалённого пользователя
request_method тип запроса (GET/POST)
script_filename полный путь к файлу это страницы
document_root путь к корневой папке сервера
server_name адрес сервера (для apache - если задана директива CanonicalName)
server_addr IP адрес сайта/сервера
server_port порт на котором работает апач
server_protocol версия протокола HTTP
server_software информация о программном обеспечение Вашего апач сервера
time_year
time_mon
time_day
time_hour
time_min
time_sec
time_wday
time
Переменные для работы со временем.
the_request полная строка HTTP запроса
request_uri запрошенный uri
request_filename полный путь к соответствующему файлу в файловой системе сервера

Условия - это perl/pcre совместивое регулярное выражение с следующими дополнениями^
! для указания что он несоответствует шаблону
< меньше
> больше
= равно
-d является каталогом
-f является файлом
-s является файлом с ненулевым размером
-l является символической ссылкой
-F существует ли файл
-U существует ли URL
Для инвертирования значения используйте ! (восклицательны знак) поставив его префиксом (перед условием).

Если Вы указываете правило [OR], тогда выполнится RewrtieRule при условии соответсвия любого из предшествующих RewriteCond

RewriteEngine on
RewriteCond %{REMOTE_HOST} ^www1.krog.com.ua [OR]
RewriteCond %{REMOTE_HOST} ^www2.krog.com.ua [OR]
RewriteCond %{REMOTE_HOST} ^www3.krog.com.ua
RewriteRule ^(.*)$ ^wwwX/

Синтаксис директивы RewriteRule :
RewriteRule ШАБЛОН  ПОДСТАНОВКА [ФЛАГ]

ФЛАГ является необязательной опцией

Список используемых ФЛАГов:
redirect R[=code] редирект
forbidden F[=code] делает URL запрещённым
gone G[=code] делает URL мёртвой
proxy P[=code] вызывает прокси
last L[=code] последнее правило
next N[=code] перезапустить процесс преобразований с первого правила
chain C[=code] связывает текущее правило со следующим (если это правило не соответствует условиям, по следущее не будет выполняться)
type T=MIME-тип[=code] принудительно установить MIME-тип
nosubreq NS[=code] !только для не внтуреннего подзапроса - этот флаг даёт команду пропустить преобразование, если текущий подзапрос ялвяется внутренним запросом
nocase NC[=code] не учитывать регистр (большие/маленькие буквы)
qsappend QSA[=code] не заменить строку запроса, а добавить к существующей
noesacpe NE[=code] не экранировать URI при выводе


Вы только посетили наш сайт, КОММЕНТИРОВАНИЕ будет доступно через несколько минут.
возможно у Вас отключен javascript, если включен - просто обновите страницу