Мы имеем базовые представления о htaccess, но не понимаем как этим пользоваться.

С чего начать настройку HTACCESS?
В статье о htaccess, мы уже разобрались, что это фаил навигации на сайте. Для его наполнения не нужен накакой язык программирования, тк он заполняется директивами, т.е синтаксисом конфигурационных файлов Apache. (Фул на Apache) Фундаментально, изучить несколько лайфхаков, представленных ниже
Делаем заглушку для сайта
Вынужденная мера, когда после редактирования сайта всё сломалось и нам необходимо создать «заглушку». Т.е. страницу, на которой мы успокаиваем пользователей датами исправления.
Берем код:
RewriteEngine On
RewriteCond %{REQUEST_URI} !/info.html$
RewriteCond %{REMOTE_HOST} !^12\.345\.678\.90
RewriteRule $ https://prostosait.com/info.html [R=302,L]
В данном примере имя этой страницы «info.html», но можно заменить на любое другое. Главное, чтобы вместо prostosait.com было имя нужного домена.
Ставим антиспам
Вас всегда будет атаковать спам, поэтому берем код:
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*prostosait.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
Так же ставим, вместо prostosait.com, нужный домен.
Ускоряем сайта
Для этого мы добавляем скорость загрузки кеша кодом:
FileETag MTime Size
<ifmodule mod_expires.c>
filesmatch “.(jpg|gif|png|css|js)$”
ExpiresActive on
ExpiresDefault “access plus 1 week”
.countLines tr td:first-child:before {
</filesmatch>
</ifmodule>
Настройка кодировки
Безусловно на всех сайтах этот код уже вшит в header
<meta charset="UTF-8">
но не лишним его будет прописать и в «.htaccess», просто добавляем код:
AddDefaultCharset UTF-8
Защищаем от чужих скириптов
В дополнение к классическим способам блокировки хакерских скриптов, можно добавить код:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]
Запрет на переход с сайта
Бывает, что нам необходимо закрыть, по разным причинам, переход с определенных сайтов. Делаем это, добавляя в наш htaccess:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} prostosait.com [NC,OR]
RewriteCond %{HTTP_REFERER} prostosait.com [NC,OR]
RewriteRule .* - [F]
</ifModule>
Естественно, вместо «prostosait.com» ставим свой, домен