mirsite

      главная страница     письмо     Добавить в избранное

    PHP // MySQL // .htaccess


   Об авторе >>>



Главная страница

PHP

MySQL

Apache и .htaccess

     Статьи

Полезные сервисы

Новости

Ссылки

Карта сайта



Apache и .htaccess



Самый популярный и распространенный в Интернете веб-сервер, по крайней мере в среде UNIX - сервер Apache. Это программа, которая осуществляет прием запросов по протоколу http, их обработку и передачу посетителю сервера ответа в виде запрошенных им html-документов, картинок и файлов.

Apache настраивается через файл конфигурации (httpd.conf), в который администратор помещает инструкции, управляющие функционированием веб-сервера.

Как правило, администраторы сервера не допускают программистов, создающих на сервере сайты, к настройкам httpd.conf. Тем более, невозможно это на серверах хостинговых компаний.

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

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

Синтаксис файлов .htaccess аналогичен синтаксису файла конфигурации httpd.conf. Однако, администратор может ограничивать с помощью директивы AllowOverride для пользователей доступ к тем или иным директивам в htaccess. Так, на хостингах, как правило запрещают изменять с помощью .htaccess директивы категории limit - например, максимальный срок выполнения php-скриптов (30 сек.) и максимальный размер загружаемого файла (2 Мб).

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

Считается, что использование файла .htaccess тормозит работу сервера и замедляет выдачу сайта пользователю. Это действительно так, но это замедление принебрежимо мало, а уж в сравнении с той пользой, которую приносит использование этого файла, столь ничтожным "торможением" можно и вовсе принебречь.

Ошибка в файле .htaccess вызывает код ответа 500 - Internal Server Error.

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




   Rambler's Top100

Александр Мироненко, MirSite.ru © 2005-2014       
Сайт обновлен 25 марта 2017 года