Приветствую вас на блоге inetsovety.ru. Сегодня я вам расскажу о настройке конфигурационного файла .htaccess для сайта на WordPress. Файл позволяет переопределить настройки веб-сервера, подключив дополнительный функционал.
Например, запретить доступ к некоторым файлам, настроить перенаправление для страниц сайта, запретить вставку и подгрузку картинок с вашего сервера на чужом сайте, заблокировать доступ к сайту с определенных IP адресов или же наоборот разрешить, настроить кэширование для ускорения загрузки сайта.
А теперь обо всем этом по порядку с кодами реализации. Файл .htaccess может находиться корневом каталоге сайта или в какой-либо из папок, находящихся на сервере. Если .htaccess находится в корневом каталоге сайта, тогда его действие распространяется на все папки и файлы на сервере. Если же .htaccess находится в отдельной папке (например wp-content), его действие распространяется на все файлы из этого каталога.
Ошибки в кодах, которые добавляются в файл .htaccess могут привести потере работоспособности сайта. Перед началом внесения каких-либо настроек в этот файл создайте его резервную копию.
Что делать, если Вы не обнаружили в корне сайта файла .htaccess? Взять готовый файл, который я дам для скачивания в конце статьи или создать свой.
Защита файлов .htaccess и wp-config.php
Чтобы взломщики не смогли получить доступ к имени и паролю базы данных, которые хранятся в файле wpconfig.php, нужно запретить доступ к этому файлу.Тоже самое нужно сделать и из файлом .htaccess. Если злоумышленники получат к нему доступ, они могут настроить перенаправление всех посетителей вашего сайта на свой.
Добавление следующих строчек кода запретит доступ к этим файла вне FTP и файлового менеджера хостинга.
# защищаем wpconfig.php <files wp-config.php> order allow,deny deny from all </files> #защищаем htaccess <Files .htaccess> order allow,deny deny from all </Files>
Эти коды лучше добавлять ближе к концу.
Ускорение загрузки сайта включением Gzip сжатия файлов и кэша браузера
Описание кодов, которые включают кэш браузера и Gzip сжатие, я уже приводила в этой статье https://inetsovety.ru/kak-proverit-skorost-zagruzki-sayta/, сейчас я их продублирую без комментариев:
# Включаем кэш в браузерах посетителей FileETag MTime Size <ifmodule mod_expires.c> <filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$"> ExpiresActive on ExpiresDefault "access plus 1 year" </filesmatch> </ifmodule> # Сжатие данных Gzip <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html <ifmodule mod_gzip.c> mod_gzip_on Yes mod_gzip_item_include file .js$ mod_gzip_item_include file .css$ </ifmodule> </IfModule>
Перенаправление с дублированных страниц
В статье о дублях страниц, которые приводят к фильтру от Гугла был подобный код:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^replytocom= [NC]
RewriteRule (.*) $1? [R=301,L]
RewriteCond %{QUERY_STRING} ^srp= [NC]
RewriteRule (.*) $1? [R=301,L]
RewriteRule (.+)/feed /$1 [R=301,L]
RewriteRule (.+)/comment-page /$1 [R=301,L]
RewriteRule (.+)/trackback /$1 [R=301,L]
RewriteRule (.+)/comments /$1 [R=301,L]
RewriteRule (.+)/attachment /$1 [R=301,L]
RewriteCond %{QUERY_STRING} ^attachment_id= [NC]
RewriteRule (.*) $1? [R=301,L]
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Благодаря ему посетители вашего сайта не будут видеть страниц с хвостами replytocom, feed, comment-page, attachment, comments, потому что их при попытке зайти на такую страницу их автоматически перенаправит с дубля на оригинал.
Ограничение доступа к сайту с определенных IP адресов
Если Ваш сайт пытаются положить, создавая множественные запросы к его страницам с определенного IP адреса, мы может запретить доступ к сайту с этого IP. В файле access.log, который должен находиться в корневой папке сайта, находите айпи вломщика и добавляете его в черный список. Если файла access.log Вы не нашли, спросите у службы поддержки хостера, как подключить сохранение журнала доступа к веб-серверу. Для этого добавляем в файл htaccess следующий код:
Order Allow,Deny Allow from All Deny from 95.181.178.62 95.181.178.61 Deny from 95.181.178.
В примере выше показано, как заблокировать два айпи, прописав их вот таким образом Deny from 95.181.178.62 95.181.178.61. Или же можно заблокировать целый диапазон IP, стерев цифры после третьей точки: Deny from 95.181.178.
Смотрите внимательно кого Вы блокируете. Если по ошибке внесете в этот список айпи робота одной из поисковых систем, в результате получите не только не добавление новых страниц в индекс, а и выпадение старых страниц него. Узнать информацию о айпи можно по ссылке
Владельцы сайтов, у которых неизменный статический айпи адрес для доступа в интернет, могут обезопасить админку от взлома, разрешив доступ в нее с одного единственного айпи. Код реализации этой защиты смотрите по ссылке.
Еще в начале статьи я упомянула о защите изображений, которые воры контента копируют вместе с текстом статьи, а потом при открытии вашей статьи на чужом сайте, картинки загружаются с вашего хостинга.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?ваш-сайт.ru/.*$ [NC]
RewriteRule.(png|gif|jpg|jpeg)$ http://www.ваш-сайт.ru/imgsecurity.jpeg [R,L]
В этом коде поменяйте ваш-сайт.ru на адрес вашего сайта, а по этому адресу http://www.ваш-сайт.ru/imgsecurity.jpeg укажите путь к картинке, которая будет грузиться вместо изображения. Что написать на этой картинке придумайте сами ![]()
Для своих сайтов я не использую больше никаких команд. Если со временем появится что-то еще я обязательно напишу в этой статье.
Вот ссылка на скачивание файла .htaccess
Напоминаю еще раз. Будьте осторожны с редактированием этого файла, одно не правильно движение и ваш сайт перестанет работать.
Жду ваших дополнений в комментариях.


Основатель остеопатии доктор Эндрю Тейлор Стилл под основой жизни понимал ненарушенное движение и беспрепятственный поток тканевых жидкостей — крови, лимфы, межклеточной жидкости. Только посредством этого может быть осуществлено жизненно важное обеспечение каждой отдельной клетки питательными веществами и кислородом, а также не менее важное выведение шлаков. В ограничении жизненного потока: заторах в сосудах (артериях, венах, капиллярах, лимфатических руслах), сдавлении и недостаточном питании нервов Стилл видел основу различных заболеваний. Если расстройство функции тканей вовремя остановить, то процесс нарастающего нарушения становится полностью обратимым.Существенной составляющей частью остеопатической философии является способность активизировать собственные целительные силы. Всякое тело обладает естественными коррекционными силами, которые стремятся обеспечить организм максимально хорошим уровнем здоровья, если не нарушено движение и беспрепятственный поток тканевых жидкостей.