Гибкая настройка сервера (.htaccess) - часть 1
14 March 2007 – 19:51Допустим у вас есть сайт, теперь надо разместить его в интернете. Допустим вы покупаете виртуальный хостинг на безе сервера Apache, разумеется никто не пустит вас в серверный httpd.conf (главный конфигурационный файл сервера Apache), т.к. изменения в нем отразятся на всех хостящихся. Поэтому заранее поинтересуйтесь у хостера включена ли возможность гибкой настройки сервера, т.е. создания настроек распространяющихся только на ваш сайт. Для гибкой настройки создается файл .htaccess.
* После создания можете кинуть файл в любой свой каталог на сервере,
* Вы можете создать столько угодно таких конфигурационных файлов.
* Правила указанные в .htaccess распространяются на тот каталог в котором он находится и на все подкаталоги, если в них в свою очередь не лежат свои .htaccess
* Все пути в .htaccess указываются от корня сервера.
* Синтаксис и правила файлов .htaccess идентичны синтасису и правилам httpd.conf
Пример файла .htaccess и несколько часто употребляемых правил:
# это комментарий
# данный скрипт
# 1) запрещает листинг (просмотр содержимого каталога в отсутствии indexных файлов)
# 2) заставляет сервер принимать ваши .php .php5 .htm .html файлы за файлы php
Options -Indexes
RemoveHandler .html .htm
AddType application/x-httpd-php .php5 .php .htm .html
***
Еще несколько правил:
# запрет доступа
Deny from all
# разрешение доступа с указанного ip
Allow from 115.89.112.100
# указание серверу обращаться к вашей собственной странице, в случае ошибки 404
ErrorDocument 404 http://your.site//your_page_404.html
# указание серверу принимать за индексные файлы: index.html index.php cia.boo
DirectoryIndex index.html index.php cia.boo
# перенаправление c "somedir/some.file" на "http://www.site.ru/index.html"
Redirect somedir/some.file http://www.site.ru/index.html
***
Если вы установили свой собственный сервер и желаете использовать возможности гибкой настройки, убедитесь, что в httpd.conf в разделе <Directory "/"> ... </Directory> указаны следующие директивы и параметры:
<Directory "/">
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
***
PS: вместо точного указания адресов можно использовать регулярные выражения (Redirect заменяется на RedirectMatch).
PPS: в ОС Windows напрямую создать .htaccess файл не поучится, воспользуйтесь Блокнотом - "Сохранить как..."
Полезные ссылки:
Сервер Apache

Трэкбэки (1)