Правильный htaccess для сайта на WordPress. Htaccess wordpress правильный


Правильный файл htaccess для Wordpress с ЧПУ

htaccess для WordPress.htaccess — это конфигурационный файл, позволяющий задать различные настройки работы вебсервера. Название файла начинается с точки. В дистрибутиве WordPress этого файла нет, однако он создается автоматически, если вы меняете структуру адресов страниц сайта на ЧПУ (ссылки, удобные для восприятия человека).

Структура адресов (ссылок) меняется в меню «Настройки — Постоянные ссылки». По умолчанию указан формат ?p=123. Такой формат ссылок может работать без дополнительных настроек файла htaccess. Однако если вы поменяете структуру на «Название записи» — sample-post/ (то, что и называется ЧПУ), то для поддержки работы таких ссылок WP должен автоматически создать htaccess со следующим кодом:

# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress

# BEGIN WordPress

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

</IfModule>

# END WordPress

Приведенный выше код — это пример наиболее стандартного и правильного htaccess для Вордпресс. Находится он в корневой папке сайта.

Если же у вас по каким то причинам этот файле не появился, вы можете создать его самостоятельно, либо скачать по ссылке (файл в архиве zip)

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

Под улучшением для поисковых систем я имел ввиду, что в htaccess можно сделать редирект адресов страниц с www на адреса без него. Дело в том, что адрес сайта может быть записан с www, то есть в виде http://www.ваш_сайт, а также без него, то есть http://ваш_сайт. Желательно склеить эти два представления, чтобы сосредоточить ссылочный вес на одном из них. Лучше всего использовать в качестве основного вид http://ваш_сайт, а с www сделать 301 редирект (301 редирект — это перенаправление с одного адреса на другой). Возможно, постепенно эта рекомендация станет устаревшей, и поисковые системы станут сами делать такую склейку.

Для этого в файл htaccess нужно добавить следующий код.

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

Options +FollowSymLinks

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]

RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

delaemsait.info

Правильный htaccess для WordPress - Как два байта переслать!

Файл .htaccess позволяет задавать дополнительные настройки для работы веб-сервера, такие как: редирект страниц, доступ к папкам и файлам, защита сайта от спама и другие. В данной статье рассматривается конфигурация файла применительно к системе управления WordPress.

Основной файл .htaccess расположен в корневой директории сайта на веб-сервере. Найти его будет не трудно, иногда файл по умолчанию назван как текстовый и имеет вид htaccess.txt - в таком случае его нужно просто переименовать в .htaccess, оставив его без расширения.

По умолчанию для системы WordPress внутреннее содержимое файла .htaccess имеет следующий вид:

# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress

Этот код является обязательным и его мы трогать не будем. Все дополнительные настройки нужно будет прописывать после этого блока.

Рассмотри наиболее интересные и необходимые функции, которые представляют интерес при работе с сайтом.

Настройка редиректа 301

с www на без www в адресе сайта.

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

и наоборот

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

вместо name нужно подставить конкретное имя домена, зону тоже нужно указывать свою, в данном примере это зона .ru

Кодировка сайта

AddDefaultCharset UTF-8

Защита файла .htaccess

<Files .htaccess> order allow,deny deny from all </Files>

Защита файла wp-config.php

<Files wp-config.php> order allow,deny deny from all </Files>

 Запрет доступа по IP адресам

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

 ip-адреса, разумеется, нужно указывать конкретные :)

Защита от спама

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

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

name.ru - это имя вашего домена

Перенаправление страниц ошибок

Можно подготовить свои заранее подготовленные и оформленные в нужном стиле страницы ошибок и сделать перенаправление на них в случае возникновения таких ошибок

ErrorDocument 401 /401.html ErrorDocument 403 /403.html ErrorDocument 404 /404.html ErrorDocument 500 /500.html

 Дополнительные файлы .htaccess

Файл .htaccess может располагаться и во вложенных папках! В таком случае, прописанные директивы будут относится к файлам внутри этих папок. По такой схеме можно запретить доступ к конкретным файлам. Например, можно создать пустой файл .htaccess внутри папок wp-content и wp-includes. Теперь можно запретить доступ к файлам по их расширениям:

Order deny,allow Deny from all <Files ~ ".(xml|css|jpe?g|png|gif|js)$"> Allow from all </Files>

Можно запретить доступ к файлам скриптов и стилей:

<Files ~ "\.(js|css)$"> order allow,deny allow from all </Files>

Используйте необходимые настройки и защищайте свои сайты, удачи!

dvabaita.ru

Настраиваем файл .htaccess для WordPress

25 декабря 2011 года, Размещено в категории: WordPress

Добрый день, давайте поговорим про этот файл.

.htaccess - специальный файл, он лежит в корне сайта (если у вас его нету, то надо создать) и выполняет директивы для сервера Апач, то есть через него можно задать инструкции для работы с сервером. Этот файл существует только на Линкус серверах, сервыры с операционной системой Windows имеют другие настройки.Настраиваем файл .htaccess для WordPressИ так, давайте разберёмся с этим файлом поближе.Обязательно прочтите перед редактированием- Через файл .htaccess можно полностью заблокировать доступ к сайту, если вы не знаете что делаете, то лучше не трогайте его.- Сделайте на всякий случай копию старого файла .htaccess, это вам позволит быстро всё восстановить, заменив им новый файл.- Пользуйтесь текстовым редактором Notepad++, он намного лучше отображает код и не создаёт лишних тегов, символов в сохраняемых файлах.

Основные настройки

Самое первое, что создаёт WordPress, так это вот такой код:

# BEGIN WordPress RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress

# BEGIN WordPress RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress

Мы задаём указания для сервера, где поясняем - где лежит наш блог. Если в корне сайта, то подходит код, который указан выше, если например сайт на WordPress-е находится в каталоге, то надо указывать вот так:

# BEGIN WordPress RewriteEngine On RewriteBase /blog/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /blog/index.php [L] # END WordPress

# BEGIN WordPress RewriteEngine On RewriteBase /blog/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /blog/index.php [L] # END WordPress

Безопасность WordPress

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

<Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>

<Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>

Блокировка по IP

C помощью этих директив, вы сможете заблокировать пользователя по IP, если вы например не хотите, чтоб он посещал сайт. Строка deny дублируется, и блокировать можно сколько угодно ip адресов.

<Limit GET POST> order allow,deny deny from xxx.xxx.xxx.xxx deny from yyy.yyy.yyy.yyy allow from all </Limit>

<Limit GET POST> order allow,deny deny from xxx.xxx.xxx.xxx deny from yyy.yyy.yyy.yyy allow from all </Limit>

Закрываем доступ для спамеров

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

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

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

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

Редиректы

Или так называемые перенаправления, они тоже делаются через файл .htaccess.

Самый простой редирект одной страницы, делается вот так:

RewriteEngine on Redirect 302 /page http://google.ru

RewriteEngine on Redirect 302 /page http://google.ru

Перенаправление всего сайта при склейке, то есть два сайта должны быть идентичными, выполняется вот так:

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]

R=301 – редирект постоянный и сайт переехал навсегда. Это означает, что поисковые системы будут передавать весь ссылочный вес новому домену.

Склейка домена с www и без

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

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

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

В этом примере, главным доменом будет www.domain.com, а domain.com будет склеено к нему. И все пользователи, которые будут запрашивать домен domain.com, перемесятся на www.domain.com. В обратной ситуации, меняем www по аналогии с примером.

Вывод

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

Интересно будет почитать:

dicim.net

WordPress » Правильный robots.txt для wordpress, и настройка .htaccess

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

Зачем нам нужен robots.txt? Отвечая сразу на этот вопрос скажу, нам необходимо запретить индексацию, но индексацию самого блога нам нельзя закрывать, наоборот мы должны приложить максимум усилий для его индексации, а запретить мы должны информацию которая не несет в себе полезность, то есть это дубли вашего контента, это различного рода системные файлы, то есть нам необходимо указать дорогу поисковым роботам к правильной индексации, именно для этой цели файл robots.txt идеально подходит. Сам процесс создания robots.txt достаточно прост, нужно просто создать текстовый документ с таким названием, заполнить этот документ правильной информацией, и залить в корень вашего блога. А сейчас давайте попробуем разобраться что же должно быть у нас внутри нашего файла?

User-agent: Yandex

 — тут мы указываем название поискового робота.

Все следующие команды которые будут идти после этого будут относиться непосредственно к поисковым роботам этой системы.

User-agent: Googlebot

Ну, тут я думаю тоже все понятно, команды будут относиться к google, так же можно указать спецсимвол «*» который будет относиться ко всем поисковым роботам.

User-agent: *

согласитесь друзья, нет ничего сложного. И так, мы с вами разобрались с двумя основными моментами, ниже представлен robots.txt моего блога, и сейчас мы с вами разберем что значит та или иная команда. User-agent: * Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /trackback Disallow: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /*?* Disallow: /tag Disallow: /?s= User-agent: Yandex Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /trackback Disallow: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /*?* Disallow: /?s= Disallow: /tag Host: wordpressu.ru Sitemap: http://wordpressu.ru/sitemap.xml.gz Sitemap: http://wordpressu.ru/sitemap.xml

Disallow- это команда которая позволяет поставить запрет, то есть в данном случае, в первой части мы задаем команды всем поисковым роботам

User-agent: *

О запрете индексации системных файлов, таких как wp-admin, cgi-bin, feed, trackback и.т.д

Во второй части, мы указываем конкретно яндексу о том что конкретно не надо индексировать, и в добавок мы указываем команду host: в которой сообщаем название нашего сайта, и соответственно указываем в добавок карту нашего сайта с помощью команды sitemap: где и указываем путь к нашей карте. На этом этапе мы можем смело сохранить наш robots.txt и загрузить в корень нашего блога, данная схема она работает без проблем, так как она у меня стоит с самого первого дня жизни моего блога, я не разу не заметил, что бы  в индекс хоть яндекс, хоть google попала не нужная часть блога, так что вы смело его использовать, самое главное это заменить адрес блога, и указать свой путь к вашей карте.

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

# BEGIN WordPress

<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ — [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule>

# END WordPress

Теперь, давайте перейдем к фишкам которые можно делать с использованием данного файла.

1.Например с помощью данного файла мы можем исключить «category» из пути в адресе wordpress. Для этого достаточно добавить строчку

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

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

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

где zaglushka.html является непосредственно страницей заглушкой.

3.Блокировка спамеров. Часто бывает так что, спамеры заходят на ваш блог с одного и того же ip адреса, в этом случае мы можем заблокировать доступ к вашем блогу с этих ip адресов, !!! Но, если вы не понимаете в этом ничего, но лучше не трогать, а поставить например akismet. 

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

ip адрес спамера указывается в третьей строке.

На самом деле друзья, с помощью данного файла можно делать еще и другие не менее интересные вещи, и данная статья является просто ознакомительной, если кому то интересно, я с удовольствием расскажу еще про данный файл.

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

P.s Если у вас есть вопросы пишите

P.p.s Вчера мы провели с нашей командой блог тур под названием «Эльбрусское ущелье», тур прошел просто шикарно, и я не просто не не выложить ролик, один день из жизни Эльбруса!

Так же друзья, советую почитать и эти статьи!!!

wordpressu.ru

.htaccess для WordPress - 11 советов по улучшению сайта

.htaccess для WordPress

Если у вас есть блог на WP, то вы наверняка в различных статьях встречались с темами, посвящёнными файлу .htaccess. Что же это «за зверь такой» и почему ему так много уделяют внимания? Всё просто, это файл конфигурации и с его помощью можно управлять папками и файлами вашего сайта WP. Поэтому его можно и нужно «сконфигурировать» немного иначе, для вашего спокойствия и отличного самочувствия.

К слову, если вдруг файла конфигурации у вас нет совсем, то это легко исправить: необходимо загрузить на ваш FTP пустой файл с названием .htaccess. Загружать его необходимо только в корневую директорию. Обязательно сделайте его доступным для записи, чтобы WordPress смог добавить в него необходимую информацию.

Зачем нам вообще «эти дебри» и почему файл .htaccess нужно изменить? Главная причина – безопасность вашего сайта. Немного отредактировав код, вы сможете обезопасить своё творение от злоумышленников. Предлагаю вашему вниманию инструкцию, как это сделать.

Любой код (сниппет), который вы увидите ниже, необходимо поместить выше # BEGIN WordPress, либо ниже # END WordPress. Потому что внутри этих кодов владения WordPress и он может вносить в них свои обновления.

ВНИМАНИЕ! Трудно переоценить важность файла .htaccess, если в него закралась ошибка – ваш сайт WP просто перестанет работать. Поэтому будьте внимательны и обязательно скопируйте первоначальную копию файла .htaccess. После внесённых изменений обновите сайт, или если что-либо происходит не так, как вам хотелось бы – перезапишите файл рабочей версией.

1.   Сохраните .htaccess от злоумышленников.

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

<files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </files>
  1. Защитите WP-Config.php

wp-config.php отвечает за авторизацию доступа в вашей базе данных. Поэтому так же скрываем его от злоумышленников:

<files wp-config.php> order allow,deny deny from all </files>
  1. Безопасность /Wp-Content/

В этой директории хранятся все ваши столь скурпулёзно настраиваемые темы и плагины, а так же загруженные медиа и кэш файлы вашего сайта. Поэтому хакер всегда стремиться получить к нему доступ. Не дайте ему это сделать, всё просто: необходимо создать ещё один файл .htaccess и поместите его в каталог /Wp-Content/ (www.ххххххххххх.com/wp-content/) и пропишите в него следующий код:

Order deny,allow Deny from all <Files ~ ".(xml|css|jpe?g|png|gif|js)$"> Allow from all </Files>

Теперь хакер не сможет загрузить в этот каталог что либо, что может повредить вашему сайту.

  1. Закройте доступ к файлам, которые не предназначены для всех:

Для этого добавьте код:

# Block the include-only files. <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+\.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] </IfModule>
  1. Ограничьте доступ к области администратора.

Как вы сами понимаете, из админ панели можно делать всё что угодно с вашим сайтом. Чтобы такая возможность была только у вас, сделайте следующее:

Создайте файл .htaccess и добавьте код:

# Limit logins and admin by IP <Limit GET POST PUT> order deny,allow deny from all allow from 12.34.56.78 </Limit>

Не забудьте прописать свой IP адрес. Если вам нужно прописать несколько адресов – пропишите их все через запятую . Осталось только поместить этот файл в директорию /wp-admin/ и доступ к сайту будет только у вас.

  1. Заблокируйте недоброжелателя

Зная IP адрес хакера, можно заблокировать его навсегда, добавив:

<Limit GET POST> order allow,deny deny from 123.456.78.9 deny from 987.654.32.1 allow from all </Limit>
  1. Подготовьте сайт к неожиданностям

Если вы будете обновлять сайт, и проводить на нём какие либо работы, то вероятно вы захотите временно скрыть его и уведомить своих посетителей. Для этого создайте файл maintenance.html и разместите на нём своё обращение к посетителям вашего сайта. После чего добавьте следующий код в файл .htaccess:

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

Как вы сами понимаете осталось лишь отредактировать имя вашего файла, путь к нему и ваш IP.

  1. Отключите обзор папок в браузере

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

# disable directory browsing Options All -Indexes
  1. Кэширования браузера

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

## EXPIRES CACHING ## <IfModule mod_expires.c> ExpiresActive On ExpiresByType image/jpg "access 1 year" ExpiresByType image/jpeg "access 1 year" ExpiresByType image/gif "access 1 year" ExpiresByType image/png "access 1 year" ExpiresByType text/css "access 1 month" ExpiresByType application/pdf "access 1 month" ExpiresByType text/x-javascript "access 1 month" ExpiresByType application/x-shockwave-flash "access 1 month" ExpiresByType image/x-icon "access 1 year" ExpiresDefault "access 2 days" </IfModule> ## EXPIRES CACHING ##
  1. Редирект 301

Если вы решили перенести сайт на новый домен, либо внести какие-либо изменения с перелинковкой страниц, то наверно вы не захотите потерять посетителей, которые не знают о «вашем переезде», для этого существует Редирект 301, который сообщит поисковикам, что сайт навсегда переехал в другое место. Для этого внесите в ваш файл .htaccess следующий код:

Redirect 301 /oldpage.html http://www.yourwebsite.com/newpage.html Redirect 301 /oldfolder/page2.html /folder3/page7.html Redirect 301 / http://www.mynewwebsite.com/
  1. Заблокировать хотлинкинг

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

RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourotherwebsite.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ http://i.imgur.com/g7ptdBB.png [NC,R,L]

Единственное на что это может повлиять, это отображение изображение в RSS-фиде.

clubwp.ru

Файл .htaccess: правильное использование, примеры и рекомендации

Что такое .htaccess?

Файл .htaccess (англ. hypertext access) используется для простой и удобной настройки веб-сервера на котором хранится сайт пользователя. Соответственно меняя настройку веб-сервера, мы сможем поменять работу сайта. Как правило, файл .htaccess находится в корневом каталоге, а его действие распространяется на весь сайт и на все подкаталоги. Если же в другом каталоге содержится свой .htaccess, то он будет действовать только на свой каталог и подкаталоги.

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

Где находиться файл .htaccess?

Обычно он располагается в коневом каталоге сайта. Иногда, в различных CMS может находится файл htaccess.txt, который никак не воспринимается сервером и ни на что не влияет. Чтобы он начал работать нужно его переименовать в .htaccess. Если это не получится сделать на вашем компьютере, то зайдите на свой сервер через FTP-клиент, и переименуйте файл прямо сервере.

Редактировать файл на компьютере можно с помощью любого текстового редактора, но чтобы избежать возможных проблем с кодировкой мы рекомендуем использовать для этого Notepad++.

Как проверить работает ли .htaccess?

Все просто, напишите в первой строчке этого файла любое слово (например YAROBOT), сохраните файл и замените им находящийся на сервере. Если сайт продолжит работать, то .htaccess в данный момент не работает. Если же появится ошибка 500 Internal Server Error, то это значит, что веб-сервер не смог понять команду (YAROBOT) и выдал ошибку. Этот факт подтвердит, что работа .htaccess на сервере поддерживается и включена в данный момент. Чтобы вернуть сайту работоспособность удалите строчку с YAROBOT.

Далее мы поговорим о всем полезном, что можно сделать с помощью данного файла.

  1. Редирект между страницами или сайтами + изменение URL
  2. Обработка ошибок
  3. Настройка безопасности сайта
  4. Кодировка страниц сайта
  5. Оптимизация работы сайта
  6. Настройка PHP

Правильный 301 редирект через файл .htaccess

Важно! Если вы хотите, чтобы ваш редирект работал,

ru.hostings.info

20 htaccess хаков для WordPress

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

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

1. Чёрный список IP адресов нежелательных пользователей и ботов

Apache может использоваться, чтобы оградить ваш сайт от нежелательных людей и ботов. Этот код позволяет посещать данный сайт всем пользователям, кроме владельцев этих IP адресов.

<Limit GET POST PUT>

order allow,deny

allow from all

deny from 123.456.789

deny from 93.121.788

deny from 223.956.789

deny from 128.456.780

</LIMIT>

Источник: smashingmagazine.com

2. Переадресация постоянных ссылок вида «день и название» на /%postname%/

Первое, что необходимо сделать это войти на страницу администрирования WordPress, перейти к Settings > Permalinks и выбрать custom. Заполните поле строкой /%postname%/.Ваши постоянные ссылки теперь будут выглядеть примерно так:

Теперь нам нужно перенаправить все обратные ссылки, использующие старую структуру постоянных ссылок, на ссылки с новой структурой. Чтобы это сделать, вы должны будете отредактировать .htaccess файл, расположенный в корневом каталоге WordPress.Будьте внимательны при редактировании .htaccess: всегда заранее создавайте резервную копию!

Вставьте следующую строку в свой .htaccess:

RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$

Источник: wprecipes.com

3. Переадресация посетителей на страницу обслуживания

RewriteEngine on

RewriteCond %{REQUEST_URI} !/maintenance.html$

RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123

RewriteRule $ /maintenance.html [R=302,L]

Источник: woueb.net

4. Переадресация www на не-www или наоборот

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_HOST} ^www.yourblogname.com [NC]

RewriteRule ^(.*)$ http://yourblogname.com/$1 [L,R=301]

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_HOST} ^yourblogname.com [NC]

RewriteRule ^(.*)$ http://www.yourblogname.com/$1 [L,R=301]

5. Установка правильного url вручную при помощи .htaccess

# Установка правильного url

RewriteEngine On

RewriteCond %{HTTP_HOST} ^yourblogname\.com$ [NC]

RewriteRule ^(.*)$ http://www.yourblogname.com/$1 [R=301,L]

6. Переадресация WordPress лент на FeedBurner

Отличный хак переадресует с на http://feeds.feedburner.com/yoursite.

# временная переадресация лент контента wordpress к feedburner

<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/webanddesigners [R=302,NC,L]

</IfModule>

Источник: perishablepress.com

7. Переадресация WordPress лент комментариев на FeedBurner

# временная переадресация лент комментариев wordpress к feedburner

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{HTTP_USER_AGENT} !FeedBurner    [NC]

RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]

RewriteRule ^comments/feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/webanddesigners [R=302,NC,L]

</IfModule>

Источник: perishablepress.com

8. SEO-благоприятная 301 переадресация

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

#SEO благоприятная 301 переадресация

Redirect 301 /abc/file.html http://www.yourblogname.com/def/file.html

9. Кэширование с htaccess

Следующий htaccess код не поможет при первой загрузке страницы, но он значительно ускорит последующие загрузки, отправляя статус 304, если требуемые элементы не были изменены.

FileETag MTime Size

ExpiresActive on

ExpiresDefault "access plus x seconds"

10. Разрешите доступ к директории wp-admin только своему IP адресу

Замените xx.xx.xx.xx на свой IP адрес, что позволит только вашему IP получить доступ к директории wp-admin.

AuthUserFile /dev/null

AuthGroupFile /dev/null

AuthName "Wordpress Admin Access Control"

AuthType Basic

<LIMIT GET>

order deny,allow

deny from all

allow from xx.xx.xx.xx

</LIMIT>

11. Запрет комментирования, при отсутствии referrer у запроса

Простой хак для защиты от спама в блоге.

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]

Источник: wprecipes.com

12. Самый простой способ забанить спамеров WordPress

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

## USER IP BANNING

<Limit GET POST>

order allow,deny

deny from 200.49.176.139

allow from all

</Limit>

13. Переадресация посетителей на страницу технического обслуживания

RewriteEngine on

RewriteCond %{REQUEST_URI} !/maintenance.html$

RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123

RewriteRule $ /maintenance.html [R=302,L]

Источник: wprecipes.com

14. Запрет доступа к файлу wp-config.php.

Файл wp-config.php в WordPress включает всю важную информацию, такую, как название базы данных.

# защита wpconfig.php

<files wp-config.php>

order allow,deny

deny from all

</files>

Источник: tdot-blog.com

15. Ограничение размера загрузок файлов до 20MB

Чтобы ограничить размер загрузки файла в wordpress до 20 Мб, используйте следующий код.

# ограничить загрузки файлов до 10mb

LimitRequestBody 10240000

16. Назначение своих страниц для HTTP ошибок

Если вы хотите переадресовывать своих посетителей каждый раз, когда они попадают на 404 HTTP ошибку, используйте этот код:

# нестандартные страницы ошибок

ErrorDocument 401 /err/401.php

ErrorDocument 403 /err/403.php

ErrorDocument 404 /err/404.php

ErrorDocument 500 /err/500.php

Источник: vortexmind.net

17. Добавление слэша в URL

Чтобы добавить слэш в конец своего URL, добавьте следующий код в файл .htaccess.

#добавление завершающего слэша

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_URI} !#

RewriteCond %{REQUEST_URI} !(.*)/$

RewriteRule ^(.*)$  [L,R=301]

18. Каталоги, защищённые паролем

Простой способ защитить паролем директорию блога

AuthType Basic

AuthName "restricted area"

AuthUserFile /usr/local/var/www/html/.htpasses

require valid-user

19. Директива CheckSpelling

Эта директива может быть полезна для автоматического исправления простых орфографических ошибок в URL

<IfModule mod_speling.c>

CheckSpelling On

</IfModule>

Источник: vortexmind.net

20. Быстрая защита файлов плагинов

Файлы плагинов WordPress могут иметь бреши в защите, что позволит хакерам получить доступ к вашему сайту. Для предотвращения того, чтобы другие имели прямой доступ к файлам плагинов, используйте следующий код.

<Files ~ "\.(js|css)$">

  order allow,deny

  allow from all

</Files>

Выводы

Использование этих htaccess хаков оказалось полезным для защиты вашего блога от проникновения спамеров и сторонних программ. Всё это поможет вам не только оградить свой сайт от хакеров, но также улучшить функциональность и увеличить скорость вашего блога/сайта. Если вы знаете какие-либо полезные хаки, напишите о них в комментариях.

Возможно, Вам будет интересно ↓↓↓

2web-master.ru


Смотрите также

Prostoy-Site | Все права защищены © 2018 | Карта сайта