Директивы
.htaccess


Что такое .htaccess?

Файл .htaccess содержит директивы конфига вебсервера Apache и помещается в ДОСТУПНЫЙ веб-серверу каталог, к которому он относится. Его действие распространяется И на все каталоги ниже. Самый верхний каталог, в который Вам следует его класть - каталог, в котором лежит корень вашего сайта.

Снижение нагрузки на сервер предупаковкой статики в .gz

По мере роста нагрузки на ваш сайт следует озаботиться уменьшением трафика между сервером и посетителем. Все современные броусеры умеют работать со сжатым GZIP контентом страниц, .css и .js файлов, которые вебсерверы Apache и nginx умеют паковать на лету, что сильно уменьшает трафик между сервером и клиентом, но повышает процессорные затраты на сервере, так как каждый запрос клиента заставляет сервер упаковывать gzip'ом.

Для сайтов и их разделов с редко изменяемым контентом, а также для .css и .js файлов есть решение, позволяющее уменьшить и трафик, и нагрузку на сервер. Надо каждый такой статический файл упаковать в .gz (и получившийся файл положить в тот же каталог, где лежит оригинал), а в .htaccess в корне сайта добавить такие строки:

Решение для Apache c модулем rewrite

<IfModule mod_rewrite.c>
RewriteEngine On

RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.(html|css|js) $1\.$2\.gz [QSA]

# Prevent double gzip and give the correct mime-type
RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1,E=FORCE_GZIP]
RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1,E=FORCE_GZIP]
RewriteRule \.html\.gz$ - [T=text/html,E=no-gzip:1,E=FORCE_GZIP]

Header set Content-Encoding gzip env=FORCE_GZIP
</IfModule>

защита от воровства картинок и файлов

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

Если Вы заинтересованы в том, чтобы такого не происходило, можете использовать вот такой набор директив в .htaccess:

<IfModule mod_access_referer.c>
 order_referer deny_referer,allow_referer
 allow_referer from gfns.net
 deny_referer from all
 ErrorDocument 403 http://gfns.net/banners/default.gif
</IfModule>

Естественно, вместо gfns.net укажите своё доменное имя.

авторизация



AuthAuthoritative on
AuthName members
AuthType basic
AuthUserFile /home/www/servers/domain/passwd1
Require valid-user

File /home/www/servers/domain/passwd1 may be created with utility htpasswd.exe

кодировка



CharsetSourceEnc koi8-r
CharsetSourceEnc windows-1251

отключение автоперекодировки



CharsetAutoRedirect koi8-r none
CharsetAutoRedirect windows-1251 none
CharsetAutoRedirect ibm866 none
CharsetAutoRedirect iso-8859-5 none
CharsetAutoRedirect x-mac-cyrillic none
CharsetAutoRedirect koi7 none
CharsetAutoRedirect utf-8 none
CharsetNormalizeToUrl none

Если вы желаете большего

Читайте документацию на вебсервер Apache.

[ ]