Главная arrow Программирование arrow HTML arrow Управление сервером Apache с помощью файлов .htaccess Tuesday, October 03 2023  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:

Управление сервером Apache с помощью файлов .htaccess Версия для печати
Написал microsin   
21.09.2008

Вэб-сервер Apache —  самый распространённый вэб-сервер. Многие начинающие вэб-дизайнеры и вэб-программисты так или иначе с ним сталкиваются. Однако большинство даже не знает основных вещей. Давайте заполним эти пробелы.

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

Содержимое .htaccess не может быть каким угодно. Если вы напишите туда всякую абракадабру или даже стихи А.С. Пушкина то Апач отреагирует на это одинаково: Internal Server Error.

Что же можно писать в htaccess? В htaccess можно писать только директивы Апач и его модулей (mod_php, mod_ruby и т.п.). Таких директив очень много, полный их список вы можете найти в документации к Апач. Мы остановимся на наиболее полезных и часто используемых директивах.

DirectoryIndex
Эта директива отвечает за то что Апач будет показывать если в качестве адреса на конце стоит / . Например: http://lenta.ru/ или http://www.artlebedev.ru/tools/ .

Вот пример использования этой директивы:
DirectoryIndex index.html index.htm index.php /cgi-bin/index.pl

Как мы видим, после имени самой директивы, через пробел, указывается список файлов которые будут читаться сервером в порядке их следования и первый найденый файл будет взят для отправки клиенту. В данном случае это index.html. Если бы файла index.html на сервере не было то Апач взял бы index.htm и так далее. Такие файлы принято называть индексными.

Options
Options  —  директива с помощью которой можно включать и выключать определённые опции для данного каталога. Опций у Options много и мы остановися на самых основных. Как и в случае с DirectoryIndex опции указываются после Options через пробел. Например:
Options Indexes ExecCGI Includes

Откроем смысл указаных опций. Indexes  —  установка этой опции позволяет, в случае отсутствия индексного файла, показывать список файлов и папок в данном каталоге. В случии её отсутствия и отсутствия индексного файла Апач выдаст 403 ошибку (Forbidden).

ExecCGI  —  наличие этой опции позволяет запускать CGI скрипты из данного каталога. Как правило, в целях безопасности, эта опция включается только для каталогов cgi-bin.

Includes  —  включает возможность использования в данном каталоге технологии SSI.

Опции в Options могут снабжаться префиксом + или - . Знак + означает включение этой опции, - выключение. Так

Options -ExecCGI +Includes

отключает возможность запуска CGI скриптов и включает SSI. Следует отметить принципиальное отличие двух директив:
Options Indexes 
  и
Options +Indexes

В первом случае, из всех опций для данного каталога включена только Indexes, во втором случае включена опция Indexes а так же опции включённые в главном конфиге Апач.

Наконец, существуют две специальные опции обозначающие две крайние ситуации:
Options None
Options All

Redirect
Название директивы говорит само за себя. С помощью Redirect можно перенаправлять запросы с одного адреса на другой. Например
Redirect /news http://lenta.ru

первая часть содержит тот адрес с которого будет сделано перенаправление, вторая, куда перенаправить. Еще один пример
Redirect /index.html http://moisait.ru/nachalo/index.php

Внимательный читатель уже заметил, что тот адрес на который идёт перенаправление дожен быть полным т.е. начинаться с http:// .

Напоследок, хочу признаться что обманул вас когда сказал что нельзя писать всё что угодно в .htaccess. В .htaccess можно писать что всё угодно если в начале каждой строки ставить символ комментария # . Комментарий полезен так же когда вы временно хотите отключить действие некоторых директив:
# Options +ExecCGI
# Redirect /news http://lenta.ru/

Статья взята с http://hostfabrica.ru/. Про применение файлов .htaccess см. также статью "Безопасность сайта".

Последнее обновление ( 03.10.2008 )
 

Добавить комментарий

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2023