.htaccess redirect
«Доступ к гипертексту» - документ доп.конфигурации HTTP-сервера Apache и его аналогов. Что же такое .htaccess и как его правильно использовать, читайте далее.
Hypertext access или общепринятое сокращение .htaccess (в переводе с английского - "доступ к гипертексту") - это документ доп.конфигурации HTTP-сервера Apache и его аналогов. С помощью данного файла можно задавать дополнительные команды на уровне отдельных директорий - папок. Благодаря этому открывается возможность регулировки таких опций, как управление доступом, перенаправление, переназначение файлов, причем без потребности работы с серверным файлом конфигураций и правках в нем.
Файл .htaccess аналогичен httpd.conf, но с условием, что его влияние ограничено лишь местом, где он находится. Возможность использования hypertext access для тех или иных папок указывается в блоке директивы AllowOverride. Изначально ей присваивается параметр All.
Как только сервер находит .htaccess, он должен определить те команды, которые ограничивают действие ранее заданных функций и данных. Чтобы исключить прочтение файла сервером для AllowOverride задается значение None.
Документ допускается размещать в любом каталоге. А все прописанные в нем команды распространяются на файлы в этой папке. Также действие файла направлено и на все поддиректории, если в них нет иных документов .htaccess.
Чтобы использовать эти документы дополнительной конфигурации необходима настройка httpd.conf - главного файла конфигураций и установка значения AllowOverride All. В обычных ситуациях все хостинг-провайдеры позволяют использовать .htaccess.
Директория прописывается начиная от корня HTTP-сервера - /var/www/***.com/htdocs/
Применение
Данный тип документа используется для решения таких задач и функций:
-
аутентификации и процесса авторизации. Для этого нужно указать необходимые ограничения конкретным папкам. Часто .htaccess связывают с .htpasswd, где хранятся пароли и учетные имена веб-пользователей;
-
для страниц ошибок. Это позволяет изменить файлы, которые появляются вместе с ошибками HTTP-сервера;
-
придания URL внятного вида. Apache может задействовать этот документ для корректировки длинных и сложночитаемых урлов в легко запоминающиеся и простые;
-
контроля кэша. С помощью .htaccess можно контролировать процессы кэширования обозревателями и прокси, чтобы снизить нагрузку и поднять пропускную способность;
-
правки опций Apache и его плагинов. Возможно преобразование ряда опций, к примеру, данных PHP-плагина.
Показательные примеры настроек веб-сайта и возможностей с использованием данного файла:
1. Директивы перенаправления, как сложного, так и простого. Общий синтаксис для данных правок имеет такой вид:
Redirect [status] URL_LOCAL URL_REDIRECT
где,
Статус указывать необязательно, можно прописать возвратный код.
URL_LOCAL - локальный фрагмент URL-адреса запрашиваемого файла;
URL_REDIRECT - адрес перенаправления.
2. Различные операции (к примеру, исключение отображения) с индексными страничками. При необходимости отключить вывод файлов определенного разрешения, директива должна иметь такой вид:
IndexIgnore *.php* *pkgdef
3. Обработка серверных ошибок, в том числе большинства четырехсотых и пятисотых.
4. Кодировка. В исходном виде данный параметр указывается так:
AddDefaultCharset WINDOWS-1251
5. Разграничение или управление доступом. Чтобы заблокировать некоторые сетевые адреса необходимо прописать команды запрета и/или разрешения:
Order Allow,Deny
Allow from all
Deny from 10.20.30.1 10.20.30.10
6. Защита паролем каталогов.
7. Опции PHP.