Статьи

Интернет Пиар   Новости   Статьи Услуги   Товар   Каталог сайтов  
::  » 

http://fasqu.com по правилам
кулинарные рецепты

А.Календарев.
01 Июня 2004 09:33
edocs.al.ru

синтаксис.htaccess

.htaccess — это весьма интересный файл вэб сервера apache, который дает вам возможность самому конфигурировать www без вмешательств системного администратора. Все что нам надо, это только знать синтаксис и принцип использования этого файла.

Принцип действия.htaccess заключается в следующем. Каждый раз обращаясь к вашей странице, вэб сервер apache пытается найти.htaccess и посмотреть, что за директивы там для него указанны.

Например вызывается страница с адресом /about/firma/pages.html.
Вэб сервер пройдет по всей цепочке каталогов
/
/about/
/about/firma/
и если найдет там.htaccess, то прочитает его и будет пытаться выполнить все, что вы ему там указали. Если.htaccess расположен в каждой из директорий, то главным будет тот, который расположен в самой верхней директории, т. е. /about/firma/

Теперь посмотрим, что мы можем делать с.htaccess, хотя бы его базовые возможности.

DirectoryIndex index.php3 index.php index.html
Указывает какие файлы будут считаться в директории стартовыми, т. е. открываться при запросе данной директории.

ErrorDocument 404 /404.html
Если пользователь вызывает не существующую страницу, то вместо стандартного сообщения об ошибке 404, мы перекидываем его на созданную нами страницу 404.html, которая расположена в корне вашего вэб сайта. Таким образом мы можем управлять многими ошибками.

AddDefaultCharset windows-1251
Указываем, что все отдаваемые страницы будут иметь кодировку windows-1251

redirect /_vti_bin http://www.microsoft.com
Это уже для всех наших сетевых вирусов и сканеров. Теперь любой запрос с адресом /_vti_bin будет автоматически перенаправляться на Microsoft.

Точно так же можно управлять и некоторыми настройками php, например:
php_flag magic_quotes_gpc on
php_flag register_globals on
php_value error_reporting 63

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

ErrorDocument 401 /my_error_pages.html
ErrorDocument 403 /my_error_pages.html
ErrorDocument 404 /my_error_pages.html
ErrorDocument 405 /my_error_pages.html
ErrorDocument 500 /my_error_pages.html

Если у вас на сервере включен mod_rewrite то можно расширить свои возможности.
Для этого нам надо добавить в.htaccess
Options +FollowSymlinks

AuthUserFile /dev/null
AuthGroupFile /dev/null

RewriteEngine On
RewriteOptions inherit

А вот далее…

Например в зависимости от того, с какого сайта на нас был реферер, мы посылаем посылаем пользователя на определенную страницу.

RewriteCond %{HTTP_REFERER} ^http://([a-z0—9-]+\.)*site.com/.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://([a-z0—9-]+\.)*site.com/ [NC,OR]
RewriteRule /* http://www2.site.com/ [R,L]

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

RewriteCond %{ HTTP:Accept-Language} ^ru.*
RewriteRule .*\.html$ http://www.site.ru [R]

или просто, в не зависимости какой файл запросили

RewriteCond %{ HTTP:Accept-Language} ^ru.*
RewriteRule .*\.*$ http://www.disney.com [R]

А теперь запретим хотлинк картинок на вашем сайте
RewriteCond %{HTTP_REFERER} !^http://([a-z0—9-]+\.)*your_site.com/.*$ [NC]
RewriteRule .*.(gif|GIF|Gif|jpg|Jpg|jpeg|JPG|JS|js)$ — [F]

Для защиты от хотлинка вы можете посетить вот эту страницу. Укажите какие файлы вы хотите защищать, и вы получите готовый.htaccess сгенерированные под ваш сервер.

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




Hosted by uCoz