Файл .htaccess (первый символ в названии файла — точка) для управления сервером Apache со стороны пользователя. Вы помещаете в этот файл директивы, которые сервер обрабатывает, выполняя действия в соответствии с настройками. Файл .htaccess может быть размещен в корневой папке. В таком случае директивы из .htaccess будут действовать по всему серверу. Также .htaccess может размещаться и в конкретной подпапке. Тогда директивы указаны в файле, «перекрывают» действие директив из «основного» файла, который находится в любой папке более высокого уровня. То есть, действие директивы из .htaccess наследуется сверху вниз, но ни как не на наоборот. Изменения, которые внесены в файл, вступят в силу мгновенно. Это связано с тем, что информация из .htaccess перечитывается при каждом обращении к веб-серверу Apache. Если использовать определенную директиву не получилось, и вы наблюдаете ошибку после добавления директивы в .htaccess, скорее всего, использование команды запрещено в условиях хостинга. Напишите в техподдержку и мы Вам поможем. Просьба как можно подробнее описывать проблему и указать результат, который хотите достичь использованием этой директивы.
На нашем хостинге запрещены директивы php_flag, php_value и options, эти директивы доступны для изменения через панель управления хостингом.
Индексный файл
По умолчанию индексными файлами есть файлы со следующими названиями: index.php, index.htm, index.html, index.shtm. Если Вы переопределите список индексных файлов Вы можете создать файл .htaccess с командой:
DirectoryIndex newindex.php
Запрет доступа
Запрет доступа с помощью .htaccess можете дать запрет на все файлы:
deny from all
Никто не сможет увидить ничего. обратите внимание на то, что скриптам, работающим на стороне сервера файлы будут доступны.
Разрешить доступ посетителю с определенного ip:
Order Deny, Allow
Deny from all
Allow from 195.245.112.2
Всем кроме IP 195.245.112.2 доступ запрещен.
Также можно указать вместо айпи домен
Order Deny, Allow
Deny from all
Allow from .domain.com
Только для .domain.com доступен ваш сайт
Установка своих страниц ошибок через .htaccess
Чаще всего возникают ошибки:
404 – страница не найдена
403 – доступ запрещен
500 – ошибка сервере, например не может быть выполнен CGI скрипт
Для переопределения страниц ошибок Вы можете директивой в .htaccess:
ErrorDocument 404 /pagenotfound.html
Изменение кодировки страниц сайта.
Мы хотим «объяснить» веб-серверу что html документы, которые размещены на сервере, нужно «отдавать» клиенту в кодировке koi8-r, а не в windows-1251. Для такого эффекта поместим в .htaccess строку: AddType "text/html; charset=koi8-r" .html .htm .shtml
Получив такой .htaccess, сервер Apache будет выдавать браузеру посетителя определенный заголовок, в котором будет написано, что документ в кодировке koi8-r.
Если в ресурсе существуют html-документы в разнообразных кодировках, (ISO-8859-1, Windows-1250, Windows-1252, UTF-8), то вам, возможно, будет необходимо отключить выдачу заголовка с кодировкой windows-1251. Для такого в .htaccess добавляем строку: AddDefaultCharset Off
При этом определенная кодировка должна быть прописана на каждой html-странице в виде тега.