Практические решения по использованию файла .htaccess |
||||
---|---|---|---|---|
Для
чего служит .htaccess?
Набирая адрес в строке браузера, вы получаете на свой компьютер
файлы, которые отображает браузер. Управление тем, какие файлы и как вам
показывать (пересылать) осуществляет веб-сервер. Наиболее популярных серверов
два: IIS и Apache. |-user | | | -user1 | | | -user2 | |-data | | | -data1 | | | -data2 |
Вот обязательной синтаксис, несоблюдение которого приводит к
ошибкам сервера: Как запретить веб-посетителям читать файлы в директории? Запрет на все файлы: Разрешить доступ с определенного ip: Запретить доступ с определенного ip: Запрет на группу файлов по маске: Запрет на конкретный файл: Пароль на директорию: Пароль только на 1 файл: Пароль на группу файлов:
Задача: есть каталог a1 и в нем два вложенных каталога a2,
a3, введено 2 уровня пользователей. 1 группа имеет доступ только к a1 и a2, 2-я
ко всем трем каталогам. Необходимо проводить аутентификацию только 1 раз - при
доступе к a1, но при этом соблюдать права на доступ к а2 и а3. файл .htaccess для каталога а1: Как сделать перенаправление (редирект) посетителя? Редирект на другой url: Показ разных страниц, в зависимости от IP
адреса посетителя: Перенаправление посетителя при запросе
определенных страниц: Как сделать стартовой другую страницу? Что бы поменять страницу, которая будет показываться при обращении
к директории, пишем: Как заставить Апач обрабатывать SSI директивы? SSI позволяют "собирать" страницу из кусочков. В одном кусочке у
вас код меню, в другом код верхней части страницы, в третьем - нижней. А
посетитель видет обычную страницу, которая состоит из того кода, который входит
в ваши кусочки. Как заставить Апач выполнять в html документах php код? Иногда бывает полезно "обмануть" посетителя, выдавая ему свои
php-скрипты или иные файлы, как html файлы. Реально используется для индексации
поисковой системой Rambler php-скриптов. Некоторые делаю мелкие фишки, вроде
того, что дают фалам расширения совпадающие с какими-либо "знаковыми" именами.
Например, на сайте http://forwebmasters.info/WIND98/TEMP/Rar$EX00.001/www.osg.ru
используются файлы с расширением osg: index.osg, script.osg и
т.п. Как самому обрабатывать ошибки Апача? Наиболее интересные и полезные ошибки Апача это: 403-404,
500. Удобно делать собственный обработчик на некоторые ошибки. В
.htaccess пишем: Как поставить запрет на отображение содержимого директории при отсутствии индексного файла? Предположим, что у вас вся графика, используемая на сайте
находится в директории img. Посетитель может набрать в адресной строке браузера
эту директорию и увидеть список всех ваших графических файлов. Конечно, это не
нанесет вам урона, но можно и не дать такого просмотра посетителю. В .htaccess
пишем: Можно ли указать кодировку на все файлы, в которой по умолчанию получает документы браузер? На заре интернета и зарождения браузеров, часто была ситуация, что
браузер не мог автоматически определить, в какой из русских кодировок написан
документ и в браузер выдавалась какая-то каша. Для избежания этого указываем,
что все отдаваемые страницы будут иметь кодировку
windows-1251: Можно ли указать кодировку на загружаемые файлы? При загрузке посетителем файла на сервер, возможна перекодировка
его - указываем, что все получаемые файлы будут иметь кодировку
windows-1251: Создал файл .htaccess, но сервер выдает 500 ошибку - Internal Erorr Ошибка синтаксиса или файл записан не в том формате. |