1. Главная
  2. Блог
  3. Полезные статьи
  4. 9 необходимых настроек файла .htaccess

9 необходимых настроек файла .htaccess

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

1. Перенаправляем подписчиков RSS на feedburner

Иногда бывают такие случаи, что обычную ленту добавляют в feedburner через некоторые время, когда у сайты появились уже подписчики. Чтобы их не терять, предлагаю использовать такой код в файле .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC]
RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/cospi[R=302,NC,L]
IfModule>

Не забудьте адрес Фида поменять на свой.

2. Используем кэш браузера

Кэш браузера или Leverage browser caching, позволяет ощутимо ускорить скорость загрузки сайта, работает по принципе - если посетитель уже загрузил один раз сайт, то картинки и.т.п. у него сохраняться и в будущем не будут загружаться заново.

FileETag MTime Size
<ifmodule mod_expires.c>
<filesmatch ".(jpg|gif|png|css|js)$">
ExpiresActive on
ExpiresDefault "access plus 1 year"
filesmatch>
ifmodule>

PS: У меня этот код не заработал, что-то с настройками VPS. Но у многих работает, так что используйте. Проверить включился ли кэш браузера, можно сервисом Gtmetrix.com

3. Запрещаем комментирование если отсутствует referrer

Часто бывает, что программы для спамы обращаются на прямую к файлу wp-comments-post.php не имея такого показателя как referrer, можно вот на этом моменте отловить часть спам комментариев.

В коде, мой домен замените на свой.

RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post.php*
RewriteCond %{HTTP_REFERER} !.*cospi.ru.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^ http://%{REMOTE_ADDR}/$ [R=301,L]

4. Перенаправить пользователя на страницу-заглушку

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

В данном случае используется 302 редирект, он говорит ПС что страница временная и не надо её индексировать. То есть не будет ни каких склеек страниц и.т.п.

RewriteEngine on
RewriteCond %{REQUEST_URI} !/inside.html$
RewriteCond %{REMOTE_ADDR} !^123.123.123.123
RewriteRule $ /inside.html [R=302,L]

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

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^ http://(.+\.)?cospi\.ru/[NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/hotlink.jpg [L]
  • cospi.ru меняем на свой адресс;
  • /images/hotlink.jpg - путь к вашей картинки, которая будет показываться на чужих сайтах.

6. Разрешить доступ к wp-admin только с Вашего IP

Если у Вас не динамический IP, то есть постоянный всегда. То можно разрешить вход в админку WordPress только с одного IP. Делается это вот так:

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Example Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
allow from 192.168.0.1
LIMIT>

Нюансы:

  • IP замените на свой;
  • Можно добавить ещё дополнительный IP, путём добавления ещё строчек allow from 192.168.0.1.

7. Дополнительная блокировка спамеров в WordPress

Наоборот можно запретить определённый IP, с которых часть приходит спам на блог.

<Limit GET POST>
order allow,deny
deny from 201.51.185.120
allow from all
Limit>

Добавить дополнительные IP, можно путём добавления ещё строчек deny from 200.49.176.139.

8. Создаём страницу 404

Изначально у WordPress всё работает нормально, но иногда возникают проблемы с правильной отдачей ошибки 404. Поэтому можно добавить вот такой код:

ErrorDocument 404 /404.html

И когда будет возникать ошибка 404, пользователь будет перемещён на страницу 404.html.

9. Склейка домена

Для правильной SEO оптимизации сайта, очень важно чтоб для Поисковых систем был доступен только один домен, в моём случае это cospi.ru, а не www.cospi.ru, www.cospi.ru/index.php и.т.п. Данный редирект, поможет Вам склеить домены:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

Данный пример редиректит все запросы без префикса www на главный домен - www.domain.com.

+7 495 175-40-25
Консультации по вопросам
info@cospi.ru
Электронная почта