logo
  • Опубликовано 28 апреля 2017
  • Комментарии к записи Файл .htaccess и его настройки отключены

Файл .htaccess и его настройки

Что такое и для чего предназначен файл .htaccess. Это файл, который управляет поведением вашего веб-сервера. С помощью .htaccess можно настраивать многие параметры вашего сайта так, как это необходимо вам.

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

Приведу ниже несколько директив, которые наиболее востребованы. Их можно вставлять в любое место вашего файла .htaccess.

1. Запрет доступа к сайту

Запрет доступа к сайту с определенных IP:

## USER IP BANNING
<limit GET POST>
order allow,deny
allow from all
Deny from xxx.xxx.xxx.xxx
</limit>

Вместо ххх прописываете IP адрес, которому будет запрещен вход на сайт.
А такая директива, наоборот, будет открывать доступ к сайту только с указанных IP:

<limit GET POST>
Order Deny,Allow
Deny from all
Allow from xxx.xxx.xxx.xxx
</limit>

2. Запрет доступа к важным файлам

В целях безопасности рекомендуется закрывать доступ к файлам .htaccess и wp-config.php. Сделать это можно, прописав следующую директиву:

# защищаем wpconfig.php
<files wp-config.php>
order allow,deny
deny from all
</files>
#защищаем htaccess
<files .htaccess>
order allow,deny
deny from all
</files>

3. Ограничение доступа к админке

Для тех у кого статический IP адрес, есть смысл разрешить доступ к админке только с вашего IP-адреса.

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Example Access Control"
AuthType Basic
<limit GET>
order allow, deny
deny from all
allow from Ваш IP
</limit>

4. Редирект 301 и 302

Редирект 301 сообщает поисковым системам, что страница или сайт были перемещены по новому адресу, старую страницу индексировать не надо, а вместо нее нужно проиндексировать новую. Существует много директорий для таких редиректов, но у кого-то возможно не все сработают. Самая простая и надёжная директива 301:

Redirect 301 /old-page http://ваш-сайт.ру/new-page

Есть еще одно полезное применение такого редиректа. Известно, что древовидные комментарии в WordPress генерируют дубли страниц c параметром «replytocom» в адресе страниц. Обычно их закрывают в файле robots.txt, но проблема в том, что все записи в robots.txt являются только рекомендациями, и ПС не обязаны им следовать. Вот Google и не следует, добавляя все такие страницы в дополнительный индекс. В таком случае необходимо использовать 301 редирект.

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

RewriteCond %{QUERY_STRING} replytocom=
RewriteRule ^(.*)$ /$1? [R=301,L]

Редирект 302 сообщает о том, что страница была перемещена временно, а потому нужно индексировать и старую, и новую.

Redirect 302 /old-page http://ваш-урл.ру/new-page

5. Защита от хотлинков

Проще говоря, защита от копирования ваших картинок со страниц сайта. Проблема не в самом копировании картинок, а в том как её копируют. Некоторые просто копируют ссылки на картинки и подгружают себе с вашего сервера, тем самым разгружая свой сайт и создавая дополнительную нагрузку на ваш. Вот для этого и ставится защита:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?ваш-сайт\.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule .*.(gif|jpg|png|ico)$ - [F,L]

6. GZIP сжатие

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

ForceType text/javascript
Header set Content-Encoding: gzip

</filesmatch>
<filesmatch "\.css.gz$">
ForceType text/css
Header set Content-Encoding: gzip
</filesmatch>
<filesmatch "\.js$">
ForceType text/javascript
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule (.*)\.js$ $1\.js.gz [L]
ForceType text/javascript
</filesmatch>
<filesmatch "\.css$">
ForceType text/css
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule (.*)\.css$ $1\.css.gz [L]
ForceType text/css
</filesmatch>

7. Включаем кеширование в браузере

Lля ускорения сайтов рекомендуется использовать Кеширование данных в браузере:

Header append Cache-Control "private"
FileETag MTime Size
ExpiresActive On
ExpiresDefault "access plus 0 minutes"
ExpiresByType image/ico "access plus 1 years"
ExpiresByType text/css "access plus 1 years"
ExpiresByType text/javascript "access plus 1 years"
ExpiresByType image/gif "access plus 1 years"
ExpiresByType image/jpg "access plus 1 years"
ExpiresByType image/jpeg "access plus 1 years"
ExpiresByType image/bmp "access plus 1 years"
ExpiresByType image/png "access plus 1 years"

Существует еще много разных директив, которые вы сможете найти по мере необходимости.

Файл .htaccess и его настройки обновлено: Апрель 28, 2017 автором: admin

Обсуждение закрыто.

▲Вверх