• • •
Apache - httpd.conf - Log
 
• • •
Options - Order - Auth
 
• • •
ErrorDocument
 
• • •
AddType - MIME types
 
• • •
CharsetDefault - CharsetSourceEnc
 
• • •
Redirect - RedirectMatch
 
• • •
Mod_rewrite - RewriteCond
 
• • •
AddHandler - Pass(Set)Env
 
• • •
PHP - .htaccess
 
• • •
Дополнительный материал
 
Рекомендуем
 
Файл .htaccess

Файл .htaccess - общая информация

Авторы ВЕБ-сервера Apache реализовали возможность децентрализованного управления конфигурацией с помощью использования специальных файлов имеющих именуемых по умолчанию - .htaccess, которые помещаются на диске прямо в веб-пространстве виртуального сервера. Эти файлы обычно называются .htaccess (обратите внимание на первый символ в названии файла - точку).

Действие команд из файла .htaccess распространяется и на подкаталоги того каталога, в котором этот файл размещен. Если файл .htaccess расположен в корневой директории сервера, то его действия распространяется на весь сервер, кроме тех директорий, где находится другой файл . htaccess (и кроме всех папок "ниже" этой папки со вторым . htaccess). Лишь модуль mod rewrite имеет свою специфику наследования.

Поскольку файлы . htaccess являются служебными, то они не доступны веб-пользователю из браузера. Хотя конечно же, абсолютно всё, в том числе и это ограничение, можно переназначить в httpd.conf - главном конфигурационном файле сервера доступному только администратору хостинга.

Файл apache .htaccess перечитывается при каждом обращении к веб-серверу, так что изменения, внесенные в этот файл, вступают в силу немедленно.

Синтаксис файлов .htaccess повторяет синтаксис главного файла конфигурации веб сервера, директивы так же аналогичны, только в сокращенном виде. Так же администратор Apache может ограничивать для пользователей доступ к тем или иным директивам. То есть, несмотря на то, что команда, в принципе, может исполняться из .htaccess, администратор может запретить доступ к конкретной директиве. Учитывайте это при работе. Обычно это выражается в том, что вместо нужного результата (при перепроверенном - 100% правильном синтаксисе директив), сервер продолжает выдавать - 500-ошибку - код статус сервера.

В файле настройки Apache за .htaccess , отвечают следующие директивы - AccessFileName и AllowOverride. Первая задает имя файла настройки (по умолчанию . htaccess ), вторая разрешает/запрещает его использование в папке. Чтобы работали настройки . htaccess , обе директивы должны быть настроены соответствующим образом.

Кстати, большинство бесплатных хостингов, хотя и держат у себя Apache , использование .htaccess не разрешают, или разрешают лишь некоторые из них.


Основные правила написания файла apache .htaccess:

  • пути к файлам (директориям) указываются от корня сервера

    Правильный пример фрагмента файла .htaccess:

    DirectoryIndex /home/www/users/AM/public_html/index

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

    Правильный пример:

    redirect /~AM http://htaccess.net.ru/
    #или

    redirect http://Best.Best-Host.ru/ http://htaccess.ru/

    Ошибка:

    Redirect /~AM www.htaccess.net.ru/

  • как Вы уже поняли, комментарии в которых можно вставлять что угодно и которые действуют до конца строки, на которой они находятся в файлах .htaccess начинаются с символа #.

  • в выражениях при наличии необходимости можно использовать специальные переменные окружения, например %{ REMOTE _ ADDR } или %{ HTTP _ REFERER }

При тестировании часто приходиться создавать файл .htaccess в Windows, так как переименовать например обычный txt-файл в файл без названия - с одним расширением .htaccess в данной системе невозможно, то проще всего обойти данное ограничение создав в notepad.exe текстовый файл, сохранить его, набрав в имени .htaccess, или просто скопировать и потом уже редактировать – вносить свои директивы в уже существующий файл .htaccess.

Так же не забывайте что .htaccess и .HTACCESS или .Htaccess абсолютно различные файлы для unix хостинга - сервера.


Ещё раз подчеркну, что главная проблема при использовании директив .htaccess – это прежде всего ограничения хостеров, особенно на бесплатных серверах, и на начальных тарифах при платном хостинге, хотя как правило, многие не ресурсоемкие и безопасные директивы здесь уже разрешаются.

Рекламная информация

Недавно освободившиеся домены с PR и ТИЦ:

Сервис http://reg.ru - крупнейшего хостинга и регистратора доменов позволяет подать заявку на регистрацию доменного имени, которое недавно было освобождено прежним Администратором. Освобожденные домены часто имеют высокие показатили ТИЦ и PR и могут быть интересны к приобретению.

Освобожденные домены .RU c ТИЦ:

Ваш скидочный 5% промокод при новой регистрации на REG.RU:


BCE5-81C9-2463-2224

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

Rotaban.ru - биржа баннерной рекламы

Объем информации: 6489 bytes
Россия • [email protected] 2005 - 2023 •


 
  http://dmoz.org/World/Russian/Компьютеры/Интернет/Дизайн_и_разработка_сайтов/Веб-строительство/Ресурсы_вебмастера/