htaccess для WordPress и не только...

underconstructionПочему некоторые вебмастера не используют feedburner? Ведь это такой замечательный инструмент для контроля за подписками на RSS. Проблема в том, что приходится руками исправлять файлы шаблонов. Этот прием поможет сохранить Ваше время.
И не забудьте исправить в строке 6 на Ваш код

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

2 — Удалить /category/ из пути в адресе WordPress
По умолчанию категории в WordPress отображаются так: httр://www.wordpress.com/blog/category/wordpress
А это не очень красиво, да и адрес выглядит длинновато.
Сейчас Вы узнаете как исправить это с помощью

RewriteRule ^category/(.+)$ httр://www.yourblog.com/$1 [R=301,L]

Теперь категории будут выглядеть как:
httр://www.wordpress.com/blog/wordpress

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

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

4 — Сжатие статических данных
Этот код уменьшит объём данных передаваемых между сервером и пользователем за счет их сжатия.

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

5 — Перенаправление постоянных ссылок на основе Дня и имени на /%postname%/
Сначала зайдите в админку WordPress, зайдите в Settings → Permalinks и выберите custom.
Заполните поле с /%postname%/.
Теперь постоянные ссылки будут выглядеть так: httр://www.yourblog.com/name-of-the-post

Теперь нам нужно перенаправить все старые ссылки на новые постоянные.
Внесите в .htaccess следующие строки:

RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ httр://www.domain.com/$4

6 — Запретить комментирование если отсутствует referrer
Метод построен на том, что многие спам-боты не передают referer когда постят данные.
Этот код проверяет поле referrerи блокирует отправку комментария если отсутствует referer при обращении к файлу wp-comments-post.php.
Не забудьте в строке 4 вписать домен своего блога

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

7 — Перенаправить пользователя на страницу-заглушку
на время работ на сайте желательно перенаправлять пользователей на временную страницу-заглушку
Замените в строке 2 maintenance.html на название вашего файла.
И в строке 3 впишите свой IP, чтобы вас не перенаправляло на эту заглушку.

302-редирек используется чтобы не проиндексировали содержимое временной страницы.

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

8 — Защита блога от хотлинков
Хотлик — это использование файлов размещенных на вашем сайте на страницах других сайтов с целью сэкономить свой серверный трафик.
Для борьбы с этой напастью помогут следующие строки в .htaccess

RewriteEngine On
#Replace ?mysite\.com/ with your blog url
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$
#Replace /images/nohotlink.jpg with your «don't hotlink» image url
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L]

9 — Разрешить доступ к wp-admin только с Вашего IP
Дополнительной защитой Вашего блога от взлома может служить ограничение списка адресов, с которых разрешено заходить в админку блога.
Не забудьте вставить свой IP в строке 8.
Если Вы захотите использовать дополнительные адреса для доступа добавьте строки allow from xx.xx.xxx.xx

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName «Example Access Control»
AuthType Basic
<LIMIT >
order deny,allow
deny from all
allow from xx.xx.xx.xx
</LIMIT>

10 — Блокирование спамеров в WordPress через .htaccess
Часто спам-боты ходят с одних и техже IP. Следующий прием поможет блокировать доступ с этих адресов.
Внеси адрес спамера в строке 3.
Можно расширить список заблокированных адресов добавив строки deny from xxx.xx.xxx.xxx.

<Limit GET POST>
order allow,deny
deny from 200.49.176.139
allow from all
</Limit>

Запись навигация

Top