.htaccess — файл дополнительной конфигурации
веб-сервера Apache, а также подобных ему серверов. Позволяет задавать большое количество дополнительных параметров и разрешений для работы веб-сервера в отдельных
каталогах (папках), таких как управляемый доступ к каталогам, переназначение типов файлов и т. д, не предоставляя доступа к главному конфигурационному файлу.
.htaccess является подобием httpd.conf с той разницей, что действует только на каталог, в котором располагается, и на его дочерние каталоги. Возможность использования .htaccess в том или ином каталоге указывается в httpd.conf.
Файл
.htaccess может быть размещён в любом каталоге. Директивы этого файла действует на все файлы в текущем каталоге и во всех его подкаталогах (если эти директивы не переопределены директивами нижележащих файлов
.htaccess). Для того что бы эти файлы
.htaccess можно было использовать, необходимы соответствующие настройки главного конфигурационного файла (значение директивы
AllowOverride должно быть установлено
All). Как правило, подавляющее большинство
хостеров разрешают использовать настройки в файле
.htaccess.
Пути к файлам и каталогам должны указываться от корня сервера, например, /pub/home/server/html/
.htaccess (редирект) redirect - перенаправления Можно отметить, что это даннная настройка .htaccess редиректа - конфигурационного файла Arache, одна из самых используемых.
>Директива Redirect
Описание: Данная директива .htaccess выполняет редирект посетителя, запрашивающего документ на другой URL . Выполняет внешний редирект (сообщая браузеру о необходимости загрузить другой URL ).
Синтаксис: Redirect [status] URL-path URL
status : необязательное поле, определяет код возврата, допустимые значения:
- permanent (301 — документ перемещен постоянно)
- temp (302 — документ перемещен временно)
- seeother (303 — смотрите другой)
- gone (410 — убран)
URL - path : локальная часть URL запрашиваемого документа.
URL : URL куда должен быть выполнен редирект
Код
Redirect doc/ http://domain.com/index.php
Redirect doc/index.html http://domain.com/index.php
redirect /~AM http://domain.com
redirect /~AM/index.shtml http://domain.com
redirect http://domain1.com/ http://domain.com/
>Директива RedirectMatch
Описание: Выполняет редирект посетителя, запрашивающего документ на другой URL. Выполняет внешний редирект (сообщая браузеру о необходимости загрузить другой URL). Директива аналогична Redirect, за исключением того, что вместо адреса запрашиваемого документа пишется регулярное выражение (шаблон)
Синтаксис: Redirect [status] regexp URL
status: необязательное поле, определяет код возврата, допустимые значения:
- permanent (301 — документ перемещен постоянно)
- temp (302 — документ перемещен временно)
- seeother (303 — смотрите другой)
- gone (410 — убран)
URL-path: локальная часть URL запрашиваемого документа
regexp: регулярное выражение (шаблон), описывающее группу URL-ей
Код
RedirectMatch (.*)\.gif$ http://domain.com/$1.png
RedirectMatch (.*\.jpg)$ http://domain.com/$1
Еще один, старый пример настройки .htaccess редиректа:
Перенаправление (редирект) посетителя при запросе определенных страниц.Это уже для всех сетевых вирусов и сканеров. Которые автоматически будут перенаправляться на сайт Microsoft:
Код
redirect /scripts http://www.microsoft.com
RedirectMatch (.*)\cmd.exe$ http://www.microsoft.com$1