Обработка файлов и папок в htaccess: запрет, правила

Существует возможность поставить в файле «.htaccess» запрет на обработку некоторых файлов или наоборот заставить файл обрабатываться вне зависимости от его расширения. К примеру, можно заставить файлы с расширением «.html» обрабатывать как будто у них расширение «.php». Это делается с помощью оператора AddHandler. Попробуем сделать это. Откроем файл «.htaccess» в корне сайта и запишем первой строчкой:

AddHandler application/x-httpd-php .html

Запрет доступа к файлу

Приведём пример запрета на доступ к файлу:

<Files "secret.php">
   Deny From All
</Files>

Теперь если сделать запрос к файлу secret.php, который находится в корневой папке сайта, то вернётся статус 403 (доступ запрещён) и будет показано сообщение:

Forbidden

You don't have permission to access secret. php on this server.

Apache/XXX (YYYY) Server at ZZZZ Port №№

Вместо отдельного файла «secret.php» можно поставить папку «/secret/». Тогда получится запрет на доступ к папке и всем вложенным в неё папкам/файлам.

Попробуем изменить сообщение о запрете доступа. Для этого поставим опцию ErrorDocument, которая указывает, какой документ необходимо выдавать на какую ошибку:

ErrorDocument 403 /403.html
<Files "secret.php">
   Deny From All
</Files>

Теперь при обращении к файлу «secret.php» будет выдаваться страница

403.html, которая находится в корне сайта. На этой странице можно написать предупреждение, которое увидят пользователи.

Запрет на отображение содержимого папки

Из соображений безопасности на сайтах часто ставят запрет на отображение списка файлов в папке без индексного файла. Представьте ситуацию: пользователь переходит по адресу сайта, который как папка. К примеру, так: site.ru/products/. Но из-за того что в этой папке не оказалось файла index.php, пользователю показывается не пустая страница, а структура файлов сайта. Чтобы этого не происходило, в .htaccess записывается опция:

Options -Indexes

Тогда при заходе в папке сайта без индексного файла, будет выдаваться статус 403.

Cмотрите другие статьи:

Что такое htaccess, редирект через htaccess и изменение адресов с mod_rewrite

Установить пароль на папку сайта через htaccess

Была ли эта статья полезна? Есть вопрос?

Закажите недорогой хостинг Заказать

всего от 290 руб

Использование файла .htaccess | 8HOST.COM