
Для того чтобы посетители не могли получить доступ к файлам из окна браузера, следует запретить доступ к ним. Для этого существует директива запрета Deny и разрешения доступа Allow, которые прописывают в файле .htaccess.
Эти директивы запрета не распространяются на скрипты сервера.
Deny from all
Пример директивы при которой будет запрещен доступ из браузера ко всем файлам и каталогам текущего каталога.
Запрет доступа к определенному файлу:
<Files config.php>
Deny from all
</Files>
Здесь запрещен доступ только к файлам с именем config.php.
Запрет доступа к файлам расширения
<Files "*.,inc">
Deny from all
</Files>
Здесь запрещен доступ к файлам с расширением inc. Директива <Fiies>, при указании имени файлов, позволяет использовать подстановочные символы:
? — любой одиночный символ;
* — любая последовательность символов, исключая символ слеша (/).
Директива <Files>, по умолчанию, не работает с регулярными выражениями, но их можно включить, поставив символ тильды (~) в опциях директивы. Синтаксис директивы в этом случае следующий:
[~][пробел][регулярное_выражение]
<Files ~ ".(inc|conf|cfg)$">
Deny from all
</Files>
Запрещен доступ к файлам с расширением inc, conf и cfg.
Директива <FiдesMatch> в качестве параметра принимает регулярное выражение.
<FilesMatch ". (inc|conf|cfg) $">
Deny from all
</Files>
Запрет с определенного IP-адреса:
Deny from 195.144.233.70
Разрешение доступа с IP-адреса:
Order deny, allow
Deny from all
Allow from 195.144.233.70
Директива order позволяет задать порядок, в котором будут выполняться директивы. Сначала выполняется директива запрета доступа (директива Deny), а затем разрешается доступ только для IP-адреса 195.144.233.70 (директива Allow). Если в первой строке поменять порядок следования директив на order allow,deny, то доступ для IP-адреса 195.144.233.70 не будет открыт, т. к. директива Deny, выполняемая последней, перекроет действие директивы Allow. Разрешение доступа только с определенного IP-адреса иногда может не срабатывать.
Например, в том случае, если на хостинге установлен обратный кэширующий proxy-сервер. Если директивы разрешения доступа не работают, то вам нужно проконсультироваться по этому вопросу со
службой поддержки хостинга.