.HTACCESS для WordPress - правильная настройка файла. Htaccess wordpress
Оптимальный .htaccess для WordPress
Файл .htaccess содержит в себе настройки для хостинг-серверов на базе linux. Многие не задумываются о важности правильной конфигурации файла .htaccess для сайта. А ведь от этого зависит безопасность вашего сайта и многие другие аспекты его работы.
Мы рассмотрим оптимальный файл .htaccess для сайта на WordPress.
1. Зачем нужен файл .htaccess?
В данном файле задается ряд важных настроек безопасности, кеширования, редиректов, сжатия файлов. Какие именно параметры можно настроить с помощью .htaccess для сайте на WordPress:
1) Безопасность:
- Запрет листинга директорий (отображение всех содержащихся в директории файлов и папок).
- Запрет различных SQL-инъекций (способ взлома сайта, основанный на внедрении в запрос произвольного SQL-кода).
- Блокирование различных hacking tools (программ, скриптов для взлома сайта).
- Защита ключевых конфигурационных файлов от доступа (файла wp-config.php, самого файла .htaccess и других).
- Запрет прямого доступа к php, xml и ini файлам
2) Оптимизация загрузки и производительности сайта:
- Оптимальный mod_headers (установка Vary: Accept-Encoding).
- Настройка gzip-сжатия.
- Настройка кеширования и периодов актуальности кеша (ExpiresByType).
3) Редиректы — перенаправления:
- Включение mod_rewrite и перенаправлений.
- 301 редирект — перенаправление с www.ваш-сайт.ru на ваш-сайт.ru либо наоборот.
- 302 — документ перемещен временно.
- 404 — файл не найден.
- Другие редиректы, в том числе сложные.
Помните: использовать оптимальный файл .htaccess — принципиально важно для вашего сайта. Если вы не будете его использовать — готовьтесь однажды увидеть сайт в черных списках поисковых систем по причине взлома, внедрения вредоносного кода и рекламных ссылок, распространения спама с вашего сайта и т.д.
Относитесь серьезно к безопасности вашего сайта!
2. Как создать файл .htaccess для вашего сайта?
Самый простой способ создания файла .htaccess — с помощью программы Total Commander.
- Создаем с помощью блокнота или любого другого текстового редактора (к примеру, notepad++) файл htaccess.txt. Пока что это обычный текстовый файл.
- Теперь открываем программу Total Commander, находим файл htaccess.txt, нажимаем правую кнопку мыши и выбираем «переименовать».
- Переименовываем htaccess.txt в .htaccess (обратите внимание: имя файла пустое, а .htaccess — это расширение файла).
- Сохраняем изменения.
- Теперь нам нужно расположить файл .htaccess в корневой директории сайта (там же, где расположен файл wp-config.php).
Для этого используйте любой FTP-клиент для загрузки файла на хостинг (можно использовать тот же Total Commander или Filezilla).
Пока что файл .htaccess пустой. Давайте наполним его содержимым.
3. Оптимальная конфигурация файла .htaccess для WordPress.
Внимание! Если вам не хочется вникать в детали — скачайте сразу оптимальный файл .htaccess для вашего сайта. После скачивания .htaccess закачайте в корневую папку сайта.
Оптимальный .htaccess для WordPress.(ссылка на Яндекс-диск).
- Общие правила: все новые директивы настроек пишутся с новой строки. Чтобы закомментировать правило, поставьте в начале строки знак #
- Важно: закомментированная строка не работает и служит как примечание для вебмастера.
- Определенные модули параметров нажно заключать в секции, например <IfModule mod_headers.c> и </IfModule>.
Итак, рассмотрим какие секции файла .htaccess за что отвечают.
1) Закроем листинг файлов и папок:
Options +FollowSymLinks -Indexes
2) Включим mod_rewrite:
RewriteEngine On
3) Теперь добавим блок настроек безопасности:
# Block out any script trying to base64_encode data within the URL. RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR] # Block out any script that includes a tag in URL. RewriteCond %{QUERY_STRING} (|%3E) [NC,OR] # Block out any script trying to set a PHP GLOBALS variable via URL. RewriteCond %{QUERY_STRING} GLOBALS (=|\[|\%[0-9A-Z]{0,2}) [OR] # Block out any script trying to modify a _REQUEST variable via URL. RewriteCond %{QUERY_STRING} _REQUEST (=|\[|\%[0-9A-Z]{0,2}) # Return 403 Forbidden header and show the content of the root homepage RewriteRule .* index.php [F] # # Deny access to php, xml and ini files # within components and plugins directories RewriteCond %{REQUEST_FILENAME} -f RewriteCond %{REQUEST_URI} \.php|\.ini|\.xml [NC] RewriteCond %{REQUEST_URI} \/components\/ [OR] RewriteCond %{REQUEST_URI} ^\/includes\/|^\/administrator\/includes\/ [OR] RewriteCond %{REQUEST_URI} \/language\/ [OR] RewriteCond %{REQUEST_URI} \/libraries\/ [OR] RewriteCond %{REQUEST_URI} \/modules\/ [OR] RewriteCond %{REQUEST_URI} \/plugins\/ [OR] RewriteCond %{REQUEST_URI} \/templates\/ [OR] RewriteCond %{REQUEST_URI} \/xmlrpc\/ RewriteRule ^(.*)$ index.php [R=404,L]# Prevent most common SQL-InjectionsRewriteCond %{query_string} concat.*\( [NC,OR]RewriteCond %{query_string} union.*select.*\( [NC,OR]RewriteCond %{query_string} union.*all.*select [NC]RewriteRule ^(.*)$ index.php [F,L]
# Block most common hacking toolsSetEnvIf user-agent «Indy Library» stayout=1SetEnvIf user-agent «libwww-perl» stayout=1SetEnvIf user-agent «Wget» stayout=1deny from env=stayout
4) Укажем редиректы, если это необходимо:
RewriteRule .* — [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]## If the requested path and file is not /index.php and the request# has not already been internally rewritten to the index.php scriptRewriteCond %{REQUEST_URI} !^/index\.php# and the request is for something within the component folder,# or for the site root, or for an extensionless URL, or the# requested URL ends with one of the listed extensionsRewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]# and the requested path and file doesn't directly match a physical fileRewriteCond %{REQUEST_FILENAME} !-f# and the requested path and file doesn't directly match a physical folderRewriteCond %{REQUEST_FILENAME} !-d# internally rewrite the request to the index.php scriptRewriteRule .* index.php [L]
5) Настроим gzip-сжатие:
<IfModule mod_deflate.c>AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascriptBrowserMatch ^Mozilla/4 gzip-only-text/htmlBrowserMatch ^Mozilla/4.0[678] no-gzipBrowserMatch bMSIE !no-gzip !gzip-only-text/html<ifmodule mod_gzip.c>mod_gzip_on Yesmod_gzip_item_include file \.js$mod_gzip_item_include file \.css$ </ifmodule></IfModule>
6) Настроим кеширование и время актуальности кеша:
<IfModule mod_expires.c>ExpiresActive On# Default expiration: 1 hour after requestExpiresDefault «now plus 1 hour»# CSS and JS expiration: 1 week after requestExpiresByType text/css «now plus 1 week»ExpiresByType application/javascript «now plus 1 week»ExpiresByType application/x-javascript «now plus 1 week»# Image files expiration: 1 month after requestExpiresByType image/bmp «now plus 1 month»ExpiresByType image/gif «now plus 1 month»ExpiresByType image/jpeg «now plus 1 month»ExpiresByType image/jp2 «now plus 1 month»ExpiresByType image/pipeg «now plus 1 month»ExpiresByType image/png «now plus 1 month»ExpiresByType image/svg+xml «now plus 1 month»ExpiresByType image/tiff «now plus 1 month»ExpiresByType image/vnd.microsoft.icon «now plus 1 month»ExpiresByType image/x-icon «now plus 1 month»ExpiresByType image/ico «now plus 1 month»ExpiresByType image/icon «now plus 1 month»ExpiresByType text/ico «now plus 1 month»ExpiresByType application/ico «now plus 1 month»ExpiresByType image/vnd.wap.wbmp «now plus 1 month»ExpiresByType application/vnd.wap.wbxml «now plus 1 month»ExpiresByType application/smil «now plus 1 month»# Audio files expiration: 1 month after requestExpiresByType audio/basic «now plus 1 month»ExpiresByType audio/mid «now plus 1 month»ExpiresByType audio/midi «now plus 1 month»ExpiresByType audio/mpeg «now plus 1 month»ExpiresByType audio/x-aiff «now plus 1 month»ExpiresByType audio/x-mpegurl «now plus 1 month»ExpiresByType audio/x-pn-realaudio «now plus 1 month»ExpiresByType audio/x-wav «now plus 1 month»# Movie files expiration: 1 month after requestExpiresByType application/x-shockwave-flash «now plus 1 month»ExpiresByType x-world/x-vrml «now plus 1 month»ExpiresByType video/x-msvideo «now plus 1 month»ExpiresByType video/mpeg «now plus 1 month»ExpiresByType video/mp4 «now plus 1 month»ExpiresByType video/quicktime «now plus 1 month»ExpiresByType video/x-la-asf «now plus 1 month»ExpiresByType video/x-ms-asf «now plus 1 month»</IfModule>
7) Настроим параметры mod_headers (Vary: Accept-Encoding)
<IfModule mod_headers.c><FilesMatch «\.(js|css|xml|gz)$»>Header append Vary: Accept-Encoding</FilesMatch></IfModule># BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ — [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule>
8) Защищаем от несанкционированного доступа файл wp-config.php:
<Files wp-config.php># Запрещаем всем доступ к файлу wp-config.phporder allow,denydeny from all</Files>
9) Защищаем от доступа сам файл .htaccess:
<Files .htaccess>order allow,denydeny from all</Files>
10) Добавим правильную кодировку по умолчанию:
AddDefaultCharset utf-8
11) Перенаправление на домен без www:
RewriteEngine OnRewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
Внимание: замените адрес site.ru на адрес вашего сайта!
12) Перенаправление с домена без www на адрес с www:
RewriteEngine onRewriteCond %{HTTP_HOST} ^site\.ruRewriteRule ^(.*)$ http://www.site.ru/$1 [R=permanent,L]
Внимание: замените адрес site.ru на адрес вашего сайта! Выберите только один вариант перенаправления: либо на www, либо на без www.
Все, мы указали все необходимые параметры в файле .htaccess для WordPress. Не забудьте сохранить файл после добавления кода.
Поделитесь этой записью с друзьями, буду благодарен!
maxtop.org
htaccess для WordPress. Правильные настройки файла htaccess
Если вы читали мою предыдущую статью о том, как создать файл htaccess для сайта или, может, вы знаете достаточно информации об этом файле и готовы приступить к практической части, тогда переходим к этой части статьи, а если вы не в курсе, о чем это я пишу, рекомендую почитать вступительную часть "Как создать файл htaccess и что это такое?".
Теперь, после краткого вступления, можно перейти к практической части. Итак, открываем файл htaccess, который находится в корне вашего сайта на хостинге или который вы только что создали, и приступаем к настройкам.
Настройки файла htaccess для WordPress.
Стандартный htaccess для Wordpress.
Вот так выглядит стандартный код htacces для wordpress.
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^robots.txt$ - [L] RewriteRule ^sitemap.xml$ - [L] RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPressНо я вам рекомендую его расширить. Смотрите предлагаемое.
Безопасность WordPress и защита.
○ Закрыть доступ к просмотру всех файлов.
Чтобы запретить возможность открыть файл напрямую, через строку браузера, набрав прямой адрес файла, закройте доступ ко всем файлам с помощью htaccess.
deny from all○ Блокировка по IP.
Если вы хотите закрыть доступ пользователя к сайту, например, за нарушение правил и т. д., вы можете заблокировать пользователя по IP.Для добавления нового IP по причине блокировки продублируйте строку deny.xx.xxx.xxx.xxx - вместо этого вставляйте IP пользователя для блокировкиx2.xx2.xx2.xx2 - вместо этого вставляйте второй IP пользователя для блокировки, и так до бесконечности.
<Limit GET POST> order allow,deny deny from xx.xxx.xxx.xxx deny from x2.xx2.xx2.xx2 allow from all </Limit>○ Защита изображения на сайте.
Представьте себе такую ситуацию: какой-нибудь сайт размещает у себя изображение, которое находится на вашем ресурсе. Таким образом, ваш сайт попадет под нагрузку, так как картинки будут загружаться с вашего сайта.Чтобы этого избежать, пропишете в файле htaccess следующее:
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www\.)?ваш-сайт.com/.*$ [NC] RewriteRule\.(png|gif|jpg|jpeg)$ http://www.ваш-сайт.com/stopimg.gif [R,L]Если кто-то решит установить картинку, хранящуюся у вас на сайте, то увидит вместо ожидаемого результата картинку с предупреждением stopimg.gif
○ Защита от Спама.
Зачастую многие спам-боты обращаются напрямую к файлу, который обрабатывает комментарии пришедшие с сайта, этот файл называется wp-comments-post.php. Можно выловить спам-бота от живого пользователя через обращение к файлу wp-comments-post.php на наличие REFERER. При добавлении комментариев, у пользователя он есть, а вот у спам-бота его нет. Но этот метод не является 100% защитой от Спама, воспользуйтесь дополнительно плагином.Не забудьте поменять "ваш домен.ru" на ваш (5-тая строка ).
# защита комментария от Спам-бота RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post\.php* RewriteCond %{HTTP_REFERER} !.*ваш домен.ru.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]○ Запретить доступ к папке wp-content и wp-includes.
Все пользователи WordPress знают, что в папке "wp-content" хранятся все плагины и темы, картинки и многое др. Рекомендую защитить папку "wp-content" от нехороших людей (редисок).
Создать новый файл htaccess в папке "wp-content" на хостинге с таким кодом (эти же действия сделайте для папки "wp-includes"):
Order deny,allow Deny from all <Files ~ ".(xml|css|jpe?g|png|gif|js)$"> Allow from all </Files>○ Запрет доступа к файлу wp-config.php
В WordPress файл "wp-config.php" содержит всю важную информацию, например, название и пароль к базе данных. Запретим доступ через файл htaccess.
# защита wp-config.php <files wp-config.php> order allow,deny deny from all </files>○ Запрещаем доступ к определенному файлу.
Вы можете защитить файлы плагина css и js.
<Files ~ "\.(js|css)$"> order allow,deny allow from all </Files>○ Запрещаем просмотр нежелательным User-Agent.
Вы можете запретить просмотр сайта некоторым программам, сканирующим сайтам, старые браузерам от которых вы полностью отказались.
SetEnvIfNoCase user-Agent ^FrontPage [NC,OR] SetEnvIfNoCase user-Agent ^Java.* [NC,OR] SetEnvIfNoCase user-Agent ^Microsoft.URL [NC,OR] SetEnvIfNoCase user-Agent ^MSFrontPage [NC,OR] Order Allow,Deny Allow from all Deny from env=bad_bot○ Ограничение доступа к админ-панеле WordPress.
Вы можете разрешить доступ к админ-панеле только вашему IP адресу. Но этот метод подходит, если у вас постоянный IP адрес.xx.xxx.xxx.xxx - это ваш IP адрес.
AuthUserFile /dev/null AuthGroupFile /dev/null AuthName "Example Access Control" AuthType Basic <LIMIT GET> order allow, deny deny from all allow from xx.xxx.xxx.xxx </LIMIT>○ Защита htaccess.
Мы защитили файлы, папки от посторонних лиц, но не нужно забывать, что сам файл htaccess тоже нуждается в защите. Согласен, немного смешно звучит.Итак, защитим все файлы, которые начинаются с "hta" от просмотра нежелательными и любопытными лицами.
<Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>Редиректы (перенаправления).
○ Самый простой редирект на новый сайт и страницу.
Если вам нужно автоматически перенаправить пользователей на другой сайт или страницу, укажите в файл htaccess вот такой код.
перенаправление на страницу сайта.
Redirect 301 / http://ваш сайт.ru/страница.htmперенаправление на новый адрес сайта.
Redirect 301 / http://ваш сайт.ru/Внимание: "/" - слеш в конце обязательно.Пример неправильной записи:http://ваш сайт.ruПример правильной записи:http://ваш сайт.ru/страница.htmhttp://ваш сайт.ru/
Также можно перенаправить со страницы на страницу, при этом сохранит PR старой страницы.
Redirect 301 /путь/старая-страница.htm http://ваш сайт.ru/новая-страница.htm○ 301 редирект для слияния страниц с www и без (склеить домен).
Чтобы поисковики один и тот же сайт не считали дублированным, домен нужно склеить. Если выразится более ясным языком, то сайт должен быть доступен только по одному адресу, т.е. либо с www, либо без www.
главным доменом будет с www
Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} ^ваш-домен\.ru$ [NC] RewriteRule ^(.*)$ http://www.ваш-домен.ru/$1 [R=301,L]главным доменом будет без www
Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} ^www.ваш-домен\.ru$ [NC] RewriteRule ^(.*)$ http://ваш-домен.ru/$1 [R=301,L]Изменяем страницы ошибок.
Рекомендую сделать личные страницы ошибок, где будет краткое разъяснение причины ошибки. В таком случае вы не потеряете клиентов при возникновении ошибки, так как пользователь будет перенаправлен на специальную подготовленую страницу.
ErrorDocument 401 /401.html ErrorDocument 403 /403.html ErrorDocument 404 /404.html ErrorDocument 500 /500.html401.html, 403.html, 404.html, 500.html - это подготовленые страницы ошибок.
Ускорение сайта через файл htaccess для WordPress.
○ Включаем кэширование браузера клиента.
Файлы сайта будут записываться в кэш браузера пользователя и при повторном вызове будут загружаться оттуда, это ускорит скорость загрузки сайта и уменьшит нагрузку на хостинг.
Header append Cache-Control "public" FileETag MTime Size ExpiresActive On ExpiresDefault "access plus 0 minutes" ExpiresByType image/ico "access plus 1 years" ExpiresByType text/css "access plus 1 years" ExpiresByType text/javascript "access plus 1 years" ExpiresByType image/gif "access plus 1 years" ExpiresByType image/jpg "access plus 1 years" ExpiresByType image/jpeg "access plus 1 years" ExpiresByType image/bmp "access plus 1 years" ExpiresByType image/png "access plus 1 years"Важно: обратите внимание на image/, возможно в вашем случае папку с картинками нужно поменять.
Кодировка сайта.
○ Кодировка по умолчанию.
Чтобы избежать проблемы с кодировкой, можно указать принудительную кодировку - UTF8
AddDefaultCharset UTF-8Вот и все!!! Не игнорируйте темой "htaccess для WordPress", так как htaccess важен для защиты блога.
С Уважением Webmasterok2009
Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓
Последние новости категории:
Похожие статьи
Популярные статьи:
bloggood.ru
12 самых полезных хитростей с .htaccess для WordPress
Жить достойно не возбраняется никому (Эразм Роттердамский).
Вы ищете некоторые полезные трюки .htaccess для вашего WordPress сайта. Файл .htaccess представляет собой мощный конфигурационный файл, который позволяет сделать много аккуратных вещей на своем сайте. В этой статье мы покажем вам некоторые из самых полезных трюков .htaccess для WordPress, которые вы можете попробовать прямо сейчас.Что за файл .htaccess и как изменить его?
Файл .htaccess, это файл конфигурации сервера. Он позволяет определить правила для вашего сервера, чтобы следовать вашему сайту.
WordPress использует файл .htaccess для создания SEO дружественной структуры URL. Тем не менее, этот файл может сделать намного больше.
Файл .htaccess расположен в корневой папке WordPress сайта. Вам нужно будет подключиться к веб-сайту с помощью FTP – клиент, чтобы изменить его.
Перед редактированием файла .htaccess, важно, загрузить копию файла на свой компьютер в качестве резервного. Вы можете использовать этот файл в случае, если что-нибудь пойдет не так.
Сказав это, давайте рассмотрим некоторые полезные трюки .htaccess для WordPress, которые вы можете попробовать.
1. Защитите свою админку в WordPress
Вы можете использовать .htaccess для защиты вашей админки в WordPress, ограничивая доступ только к выбранным IP-адресам. Просто скопируйте и вставьте этот код в файл .htaccess:
AuthUserFile /dev/null AuthGroupFile /dev/null AuthName "WordPress Admin Access Control" AuthType Basic <LIMIT GET> order deny,allow deny from all # белый лист IP адресов AndreyEx allow from xx.xx.xx.xxx # белый лист IP адресов Дом allow from xx.xx.xx.xxx </LIMIT>
AuthUserFile /dev/null AuthGroupFile /dev/null AuthName "WordPress Admin Access Control" AuthType Basic <LIMIT GET> order deny,allow deny from all # белый лист IP адресов AndreyEx allow from xx.xx.xx.xxx # белый лист IP адресов Дом allow from xx.xx.xx.xxx </LIMIT> |
Не забудьте заменить значения хх на собственный IP-адрес. Если вы используете более одного IP-адреса для доступа к Интернету, убедитесь, что вы добавляете их.
Подробные инструкции можно найти в руководстве о том, как ограничить доступ к панели администратора WordPress с помощью .htaccess.
2. Защита паролем папки администратора WordPress
Если доступ к WordPress сайту из нескольких мест, включая Интернет в общественных местах, то ограничение доступа к определенным IP-адресам не может работать для вас.
Вы можете использовать файл .htaccess, чтобы добавить дополнительную защиту пароля на вашу админку в WordPress.
Во- первых, вам нужно создать файл .htpasswds. Вы можете легко создать с помощью этого онлайн – генератора.
Загрузить этот файл .htpasswds за пределами общедоступного каталога или папки /public_html/. Хороший путь будет выглядеть так:
/home/user/.htpasswds/public_html/wp-admin/passwd/
Затем создайте файл .htaccess и загрузить его в каталог /wp-admin/ и затем добавьте следующий код:
AuthName "Admins Only" AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd AuthGroupFile /dev/null AuthType basic require user putyourusernamehere <Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>
AuthName "Admins Only" AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd AuthGroupFile /dev/null AuthType basic require user putyourusernamehere <Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files> |
Важно:
Не забудьте заменить путь к файлу AuthUserFile на путь файла .htpasswds и добавить имя пользователя.
Подробные инструкции можно найти в руководстве о том, как защитить паролем папку администратора в WordPress.
3. Отключить просмотр каталога
Многие эксперты по безопасности WordPress рекомендуют запрещать просмотр каталогов. При включенном просмотре каталогов, хакеры могут заглянуть в структуру каталогов и файлов вашего сайта, чтобы найти уязвимый файл.
Чтобы отключить просмотр каталогов на вашем сайте, вам необходимо добавить следующую строку в файл .htaccess.
4. Отключить выполнение PHP в некоторых каталогах WordPress
Иногда хакеры могут взломать WordPress сайт и установить бэкдор. Эти бэкдоры файлы часто замаскированы как основные WordPress файлы и помещаются в папку /wp-include/ или /wp-includes/ или /wp-content/uploads/.
Более простой способ улучшить безопасность вашего WordPress является отключение выполнения PHP для некоторых WordPress каталогов.
Вам нужно будет создать пустой файл .htaccess на вашем компьютере, а затем вставить следующий код внутри него.
<Files *.php> deny from all </Files>
<Files *.php> deny from all </Files> |
Сохраните файл, а затем загрузить его в каталоги /wp-content/uploads/ и /wp-includes/. Для получения дополнительной информации посетите наш учебник о том, как отключить выполнение PHP в определенных каталогах в WordPress.
5. Защита вашего конфигурационного файла wp-config.php в WordPress
Вероятно, самый важный файл в корневом каталоге вашего сайта WordPress является файл wp-config.php. Он содержит информацию о вашей базе данных WordPress и как подключиться к ней.
Чтобы защитить файл wp-config.php от самовольного доступа, просто добавьте этот код в ваш файл .htaccess:
<files wp-config.php> order allow,deny deny from all </files>
<files wp-config.php> order allow,deny deny from all </files> |
6. Установка 301 редирект через файл .htaccess
Использование 301 редиректа это самый SEO дружественный способ рассказать пользователям о том, что содержание переехало в новое место. Если вы хотите правильно управлять 301 редиректом в постах и на основе постов, то проверьте наше руководство о том, как настроить переадресацию в WordPress.
С другой стороны, если вы хотите быстро настроить переадресацию, то все, что вам нужно сделать, это вставить этот код в файле .htaccess.
Redirect 301 /oldurl/ http://www.example.ru/newurl Redirect 301 /category/television/ http://www.example.ru/category/tv/
Redirect 301 /oldurl/ http://www.example.ru/newurl Redirect 301 /category/television/ http://www.example.ru/category/tv/ |
7. Запрет подозрительных IP-адресов
Вы видите необычно высокие запросы на ваш сайт с определенного IP-адреса? Вы можете легко блокировать эти запросы путем блокирования IP-адреса в файле .htaccess.
Добавьте следующий код в файл .htaccess:
<Limit GET POST> order allow,deny deny from xxx.xxx.xx.x allow from all </Limit>
<Limit GET POST> order allow,deny deny from xxx.xxx.xx.x allow from all </Limit> |
Не забудьте заменить хх на IP-адрес, который вы хотите заблокировать.
8. Отключить хотлинк на изображение в WordPress с помощью .htaccess
Другие веб-сайты делают непосредственно хотлинкинг изображения с вашего сайта, что может сделать ваш WordPress сайт медленным и превысить лимит пропускной способности. Это не является большой проблемой для большинства небольших сайтов. Однако, если вы используете популярный веб-сайт или веб-сайт с большим количеством фотографий, то это может стать серьезной проблемой.
Вы можете предотвратить хотлинкинг изображения, добавив этот код в ваш файл .htaccess:
#disable hotlinking of images with forbidden or custom image option RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?andreyex.ru [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.ru [NC] RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]
#disable hotlinking of images with forbidden or custom image option RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?andreyex.ru [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.ru [NC] RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L] |
Этот код позволяет только изображения, которое будет отображаться, если запрос происходящие из andreyex.ru или Google.ru. Не забудьте заменить andreyex.ru на собственное доменное имя.
Другие способы защитить ваши изображения можно найти в руководстве по способам предотвращения кражи изображений в WordPress.
9. Защита .htaccess от несанкционированного доступа
Как вы уже видели, есть так много вещей, которые можно сделать с помощью файла .htaccess. Из-за власти и контроля, которые он имеет на своем веб-сервере, важно, чтобы защитить его от несанкционированного доступа со стороны хакеров. Просто добавьте следующий код в ваш файл .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> |
10. Увеличение загрузки файлов Размер в WordPress
Существуют различные способы, чтобы увеличить максимальный размер загружаемых файлов в WordPress. Тем не менее, для пользователей на общем хостинге некоторые из этих методов не работают.
Одним из методов, который работал для многих пользователей, добавление следующего кода в файл .htaccess:
php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300 php_value max_input_time 300
php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300 php_value max_input_time 300 |
Этот код просто говорит вашему веб-серверу, использовать эти значения, чтобы увеличить размер загружаемого файла, а также максимальное время выполнения в WordPress.
11. Запретить доступ к XML-RPC-файл с помощью .htaccess
Каждая установка WordPress поставляется с файлом под названием xmlrpc.php. Этот файл позволяет сторонним приложениям подключаться к WordPress сайту. Большинство экспертов в области безопасности WordPress советуют, что если вы не используете какие-либо сторонние приложения, то вы должны отключить эту функцию.
Есть несколько способов сделать это, один из них, добавив следующий код в файл .htaccess:
# Block WordPress xmlrpc.php requests <Files xmlrpc.php> order deny,allow deny from all </Files>
# Block WordPress xmlrpc.php requests <Files xmlrpc.php> order deny,allow deny from all </Files> |
12. Блокировать сканы автора в WordPress
Общий метод, используемый в грубых силах, чтобы запустить сканирование автора на WordPress сайте, а затем попытаться взломать пароли для этих имен пользователей.
Вы можете блокировать такие сканы, добавив следующий код в ваш файл .htaccess:
# BEGIN block author scans RewriteEngine On RewriteBase / RewriteCond %{QUERY_STRING} (author=\d+) [NC] RewriteRule .* - [F] # END block author scans
# BEGIN block author scans RewriteEngine On RewriteBase / RewriteCond %{QUERY_STRING} (author=\d+) [NC] RewriteRule .* - [F] # END block author scans |
Мы надеемся, что эта статья помогла вам узнать самые полезные приемы в файле .htaccess для WordPress.
andreyex.ru
Как настроить файл конфигураций htaccess для CMS Wordpress
WordPress — удобная и функциональная платформа для сайтов. На этой платформе удобно работать как новичкам, так и профи, поскольку движок содержит множество функций. А помимо того, что вы можете настраивать сайт при помощи большого количества различных плагинов WordPress, также можно редактировать файл htaccess на сервере. Что он даст вашему сайту и как должен выглядеть правильный конфигурационный документ htaccess для WordPress — вы узнаете в статье.
Как создать htaccess, где он находится и для чего нужен
Неважно для какого движка вы создаете конфигурационный файл — htaccess для WordPress или для прочих CMS; важно то, как вы его наполните. Файл htaccess является документом дополнительных конфигураций сервера Apache. Он содержит различные директивы, которые управляют сервером. Стандартный файл htaccess не содержит полезных функций, потому вам придется их в него добавить самостоятельно.
Обычно, пользователям приходится вручную добавлять файл конфигураций. Но htaccess для WordPress, как правило, уже есть в комплекте с директивами движка. Если вы его не обнаружили, тогда его можно создать самостоятельно при помощи любого имеющегося у вас на компьютере текстового редактора. Для этого добавляете файл с расширением .htaccess — имени у него нет.
Куда сложнее не создать htaccess для WordPress, а настроить его. Ведь именно от наполнения этого файла зависит его роль на сервере. Он может защищать ваши файлы и папки, влиять на скорость загрузки страниц, либо стать элементом для оптимизации ресурса — решать вам. Но учтите, чтобы использовать сложные опции файла, нужно предельно точно знать его синтаксис и правила написания определенных директив. Сразу вы не сможете этим овладеть, потому понадобится время на обучение и практику.
Рекомендуется тестировать ваши первые версии файла htaccess на локальном сервере, чтобы создать правильный конфигурационный файл htaccess для WordPress без каких-либо ошибок.
У файла htaccess нет особых требований по поводу расположения. Вы можете поместить этот файл в любой каталог. Но при этом он не сможет влиять на каталоги, которые находятся выше. То есть если хотите сделать главный файл настроек, то должны его поместить в корень сайт. А по надобности будете создавать дополнительные документы htaccess, и размещать их в нужных папках.
Как должен выглядеть правильный файл конфигураций htaccess
Настройка такого файла должна проходить с учетом особенностей движка Вордпресс. К примеру, в WordPress есть неприятный нюанс — ссылки категорий слишком длинные из-за того, что в них указывается каталог /category/. Если у вас на сервере есть модуль mod_rewrite, то вы с легкостью сможете удалить название этого каталога из ссылок. А короткие ссылки — это залог лучшей индексации ресурса в целом, и отдельных его страниц. Правило для удаления названия папки с категориями выглядит следующим образом: RewriteRule ^category/(.+)$ httр://www.site.ru/$1 [R=301,L].
Если пристально посмотрите на указанное выше правило, то в конце в квадратных скобках увидите R=301 — это редирект. Он нужен для того, чтобы создавать перманентные перенаправления. Вы бы могли не указывать его в правилах переадресаций, но так бы поисковые системы сочли это за накрутку трафика, и наказали бы ваш сайт фильтром. Используйте редирект 301 только для тех случаев, когда уверены, что данные ссылки использовать больше не будете. А если вам нужно организовать временное перенаправление URL, то указывайте 302 редирект.
Многие вебмастера в Вордпресс переусердствуют с добавлением различных плагинов в движок. Со временем это начинает сильно тормозить работу сайту. Поисковые системы любят быстрые веб-ресурсы и наказывают медленные. Для вашего блага лучше быть в группе «любимчиков». Потому вы обязаны добавить кэширование браузера к себе на сайт. И сделать это можно помощи того же файла htaccess. Для этого пропишите две строки с тегами <ifmodule mod_expires.c></ifmodule>. Между ними добавьте теги <filesmatch></filesmatch>. В открывающем теге <filesmatch> вам нужно будет прописать форматы файлов, которые нужно будет кэшировать, через символ «|». Затем укажите серверу, чтобы он использовал специальный модуль при помощи строки: ExpiresActive on. И последняя строка перед закрывающими тегами — это директива ExpiresDefault, которая содержит опцию «access plus» с указанием максимального периода хранения кэша браузерами пользователей.
Еще один способ ускорить загрузку страниц сайта при помощи конфигурационного файла — это активировать сжатие данных. Тогда улучшенную скорость загрузки сайта заметит не только пользователь, который приходит к вам во второй раз, но и новые посетители. При помощи директивы AddOutputFilterByType DEFLATE вам нужно будет указать форматы файлов, которые необходимо сжимать при помощи механизма GZIP. А директива BrowserMatch позволит вам отдельно настроить различные браузеры пользователей, чтобы сделать для каждого посетителя индивидуальную настройку.
Очень важно сразу, как вы запустили сайт, защитить его от хотлинков. Есть множество вебмастеров, которые с радостью поживятся картинками с вашего сайта. Они добавляют к себе на ресурс фото при помощи ссылок с вашего сайта. Таким образом, свой сервер они не нагружают, зато на ваш хостинг увеличивается число запросов. Заблокируете хотлинки — еще больше ускорите работу сайта. А сделать это можно при помощи директив модуля mod_rewrite: RewriteEngine, RewriteCond и RewriteRule.
Рекомендуется также использовать htaccess для защиты различных частей вашего ресурса. Если у вас на компьютере статический IP, то вы можете ограничить доступ к странице авторизации в административную панель при помощи фильтрации. Либо можете добавить дополнительный пароль для открытия этой страницы. Тогда взломщикам придется вдвойне сложно: им нужно будет сначала подобрать пароль для открытия wp-admin, а затем еще взломать саму админку. Разумеется, никто не станет делать двойную работу, и ваш сайт быстро покинут с такими намерениями.
Для блокировки доступа для всех, кроме вашего IP, используйте директивы Deny from (запретить для) и Allow from (разрешить для). Пропишите запрет для всех (Deny from all), а в строке Allow From укажите ваш IP. Точно по такому же принципу вы сможете создать черный список IP-адресов для спамеров. Сначала вы разрешаете доступ к сайту для всех, а потому через строку Deny from прописываете IP тех, кто пытался спамить у вас на сайте, либо тех, кому нельзя входить на ваш ресурс. Для крупных порталов такой способ навряд ли подойдет, но для небольших и стартующих сайтов вполне сгодится.
Если вам покажется, что вы уже все сделали для работоспособности и эффективности сайта, то пришло время изменить страницы с ошибками. Есть страницы, которые пользователь видит по умолчанию, если на сайте возникла ошибка. Они оформлены ужасным образом, и в качестве пояснений там либо что-то на английском, либо написано непонятным для простого пользователя языком. Потому вам лучше создать свои html-страницы. А затем в файле htaccess вы сможете прописать путь для них, используя директиву ErrorDocument. Сделайте так, чтобы эти страницы начали приносить трафик ресурсу, а не были пробоинами в вашем «веб-корабле». Можете либо удивить пользователей красивым дизайном, чтобы им захотелось взглянуть на остальной сайт, либо добавить ссылки на другие разделы, чтобы посетителям захотелось перейти в другую часть ресурса.
В htaccess есть множество других опций, но указанных достаточно, чтобы улучшить работу вашего сайта на движке Вордпресс! Изучайте синтаксис, тренируйтесь, и файл htaccess непременно станет полезным инструментом для вас и вашего веб-ресурса.
Похожие статьи
e-webmaster.ru
10 приемов с .htaccess для WordPress
10 отличных приемов с .htaccess для WordPress. Перед изменением файла .htaccess не забудьте сделать его резервную копию.
1 — Перенаправляем WordPress RSS поток на feedburner с использованием .htaccessПочему некоторые вебмастера не используют 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А это не очень красиво, да и адрес выглядит длинновато. Сейчас Вы узнаете как исправить это с помощью .htaccess
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|js)$"> 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/html5 — Перенаправление постоянных ссылок на основе Дня и имени на /%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/$46 — Запретить комментирование если отсутствует 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 GET> 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>www.wp-info.ru
htaccess для wordpress - пример правильного файла
Файл .htaccess – это конфигурационный файл, который позволяет выполнить много различных действий на вашем сайте. Рассмотрим некоторые полезные способы настройки .htaccess для сайта WordPress, чтобы эффективно использовать ресурсы сервера и улучшить безопасность.
Что такое .htaccess файл, зачем нужен?
Файл .htaccess является файлом конфигурации сервера. Он позволяет определять правила, которые применяет хостинг-сервер Apache для обслуживания вашего интернет-ресурса. В частности, WordPress изменяет .htaccess, чтобы иметь возможность обрабатывать постоянные ссылки. В этом файле можно переопределить настройки веб-сервера, чтобы повысить безопасность и производительность вашего сайта.
Имя файла .htaccess является сокращением от «Hypertext Access», а точка перед именем означает, что это скрытый файл. Вы не сможете увидеть его при просмотре файлов, если файловый менеджер не отображает скрытые файлы на вашем компьютере.
Редактируя файл с помощью правильных команд, вы можете добавлять или отключать дополнительные функции для защиты вашего сайта от спамеров, хакеров и других угроз. Некоторые из полезных команд включают:
- переадресацию на другие страницы;
- блокировку внешнего доступа к отдельным файлам и папкам;
- защиту паролем содержимого сайта и входа в админ-панель;
- закрытие доступа к сайту по IP-адресу;
- предотвращение использования изображений на других ресурсах.
Файл .htaccess находится в корневом каталоге сайта WordPress. Чтобы его отредактировать необходимо подключиться к серверу при помощи FTP-клиента, например, FileZilla. Перед редактированием файла .htaccess рекомендуется скопировать его на локальный компьютер в качестве бекапа. Вы сможете использовать эту резервную копию для восстановления системы при необходимости.
Код стандартного .htaccess файла вордпресс
В зависимости от процедуры установки WordPress, у вас может не быть файла .htaccess в корне сайта. Чтобы его создать, используйте текстовый редактор. Назовите файл .htaccess и загрузите его на сервер. Некоторые операционные системы, например, Windows, не позволят вам задать подобное имя файла. В этом случае сформируйте файл htaccess.txt, а после загрузки на сервер переименуйте его в .htaccess.
Код, который согласно кодексу 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 разумно установить на него права доступа со значением 644 для защиты от возможных атак. Строки кода, начинающиеся с хэштега, являются комментариями и исключаются из обработки сервером. Поэтому при редактировании этого файла вы можете добавлять в него поясняющие комментарии.
Не рекомендуется добавлять или редактировать что-либо между строками # BEGIN WordPress и # END WordPress. Когда вы добавляете новые правила, включайте их выше или ниже приведенного кода.
Имейте в виду, что всего одна синтаксическая ошибка в коде .htaccess может сделать сайт неработоспособным. Если это произошло, загрузите на сервер резервную копию рабочего файла, предварительно сохраненную локально.
Как закрыть доступ по IP в .htaccess
Файл .htaccess можно использовать для защиты области администрирования WordPress, ограничивая доступ только выбранным IP-адресам. Добавьте следующий код:
ErrorDocument 401 default ErrorDocument 403 default <Files wp-login.php> Order deny,allow Deny from all Allow from ххх.ххх.ххх.хх localhost </Files>Замените значения ххх собственным IP-адресом, для выполнения этого правила IP должен быть постоянным. Если для доступа используется более одного IP, также пропишите их, аналогичным образом добавляя предпоследнюю строку. Первые две строки кода перенаправляют несанкционированные IP-адреса на страницу с ошибкой 404.
Если вы обнаружили слишком частые запросы на сайт с одного IP-адреса, возможно, это проявление действий злоумышленника. Вы можете предотвратить эти запросы, применяя блокировку по IP. Вставьте такой код в файл .htaccess:
<Limit GET POST> order allow,deny deny from xxx.xxx.xx.x allow from all </Limit>Вместо ххх укажите IP-адрес, который требуется заблокировать.
Как защитить изображения от вставки на других ресурсах
Посторонние сайты, которые непосредственно ссылаются на ваш сайт, могут сделать его медленным и превысить ограничение вашего хостера по пропускной способности. Это несущественная проблема для большинства небольших сайтов. Однако, если вы запустите популярный интернет-ресурс с большим количеством изображений, этот факт может серьезно затруднить работу сайта.
Предотвратить несанкционированное использование картинок на своем сайте можно, если добавить в .htaccess этот код:
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?site.ru [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]Такой код позволяет отображать изображения только в том случае, если запрос отправляется с сайта site.ru или Google.com. Замените site.ru на доменное имя вашего сайта.
Настройка 301 редиректа wordpress
Применение переадресации с кодом 301 – это самый удобный для SEO способ информировать посетителей о том, что контент переместился в новое место. Чтобы правильно управлять 301 редиректом, допишите в файл .htaccess код для перенаправления пользователя на другую страницу:
Redirect 301/ http://www.site.ru/new-urlПри переименовании категорий на сайте можно сначала указать старый URL и сделать с него редирект на новый URL:
Redirect 301/category/television/ http://www.site.ru/category/tv/Переадресация также необходима между адресами вашего сайта с www и без него, поскольку поисковые системы считают эти URL разными. За основной адрес сайта может быть выбран только один из них, со второго необходимо сделать редирект на главный адрес. Для перенаправления на www.site.ru добавьте код:
Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} ^sait\.ru$ [NC] RewriteRule ^(.*)$ http://www.sait.ru/$1 [R=301,L]Чтобы задать 301 редирект в обратном направлении, поменяйте местами URL-адреса в двух последних строках.
Как включить кеширование браузера правильно
С помощью кеширования вы можете указать браузеру, когда файлы сайта обычно изменяются, например, раз в месяц или каждую неделю. Это ускорит работу вашего сайта на стороне пользователя, поскольку браузер будет отправлять запросы на ваш сервер только после объявленного времени.
Когда файл понадобится снова, браузер извлечет его из своего локального кеша, а не будет запрашивать повторную загрузку с сервера. Это экономит трафик с вашего сайта и позволяет избежать ненужных HTTP-запросов при последующем просмотре страниц.
Установите дату истечения срока действия или максимальный период для статических ресурсов, таких как изображения, css-стили, js-скрипты, pdf, swf-файлы. После настройки кеширования сайт будет загружаться намного быстрее.
Включить кеширование браузера можно, если прописать в .htaccess следующий код:
Header append Cache-Control "public" FileETag MTime Size ExpiresActive On ExpiresDefault "access plus 0 minutes" ExpiresByType image/ico "access plus 1 years" ExpiresByType text/css "access plus 1 years" ExpiresByType text/javascript "access plus 1 years" ExpiresByType image/gif "access plus 1 years" ExpiresByType image/jpg "access plus 1 years" ExpiresByType image/jpeg "access plus 1 years" ExpiresByType image/bmp "access plus 1 years" ExpiresByType image/png "access plus 1 years"www.ipipe.ru
Как защитить WordPress-сайт с помощью .htaccess
WordPress является самой популярной CMS в мире с более чем 70 миллионами пользователей, но так ли безопасна эта CMS? В этой статье Paul Maloney покажет вам, как защитить ваш сайт на WordPress с помощью .htaccess.
WordPress, без сомнения, самая популярная CMS в данный момент, значительно опережая другие альтернативы, такие как Joomla и Drupal.
WordPress имеет очень большое и активное сообщество, которое создает большое количество плагинов, тем и хаков, но популярность имеет и свои минусы... Сайты на Wordpress постоянно подвергаются попыткам взлома.
Наша задача, как пользователей WordPress (кроме вклада в WordPress-сообщества) держать наш сайт в безопасности от людей, которым мы не хотим давать доступ к сайту.
Есть множество плагинов, чтобы укрепить защиту WordPress, такие как Login LockDown, который фиксирует IP-адреса и блокирует их после определенного числа неудачных попыток входа в систему, он помогает против подбора пароля.
Другой плагин WP Security Scan, проверяет ваш сайт на наличие уязвимостей и предлагает возможные методы для исправления ошибок, которые он нашел.
Одним из самых игнорируемых методов безопасности является отказ от установки самых последних обновлений и исправлений на ваш сайт.
Настройка файла .htaccess
Наряду с использованием плагинов, есть ряд способов защиты, которые вы можете применить с помощью файла .htaccess, в сочетании с плагинами и регулярными обновлениями - это повысит уровень безопасности вашего сайта и даст вам дополнительный уровень защиты.
Я расскажу о некоторых способах защиты, и покажу вам, как и где можно добавить фрагменты кода, которые помогут вам обезопасить ваш сайт.
Типичный .htaccess файл в 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 добавлять после #END WordPress.
Это позволит вам не сломать какой-либо базовый функционал в WordPress. До внесения изменений в файл .htaccess я настоятельно рекомендую сделать резервное копирование данных и сохранить их в безопасном месте!
Защита WP-config.php
WP-config.php - это файл в корневом каталоге, который хранит информацию о вашем сайте, а также о базе данных.
Чтобы предотвратить доступ к wp-config.php добавьте следующие строки в ваш файл .htaccess:
<Files wp-config.php> order allow,deny deny from all </Files>
Доступ в админку только с вашего IP
Вы можете ограничить доступ в админку по IP-адресу, для этого вам нужно будет создать новый файл .htaccess в обычном текстовом редакторе и загрузить его в свою папку wp-admin.
Cледующий код запрещает доступ в админку для всех IP-адресов, за исключением вашего IP-адреса, но имейте в виду, если у вас динамический IP, вам, возможно, придется регулярно изменять этот файл, в противном случае вам также будет отказано в доступе!
order deny,allow allow from 202.090.21.1 (замените это (202.090.21.1) на ваш IP адрес) deny from all
Баним подозрительных пользователей
Если вы обнаружили в логах, что кто-то пытается взломать ваш сайт или посылает очень много запросов к вашему сайту, то вы можете запретить ему доступ к сайту с помощью этого простого кода в .htaccess:
<Limit GET POST> order allow,deny deny from 202.090.21.1 allow from all </Limit>
Этот пользователь или бот теперь не сможет получить доступ к сайту пока не сменит IP адрес. Но вы можете добавить сколько угодно запрещенных IP адресов, например:
<Limit GET POST> order allow,deny deny from 202.090.21.1 deny from 204.090.21.2 allow from all </Limit>
Запрет на просмотр списка файлов в каталоге
Так как WordPress в настоящее время очень популярен, многие знают структуру WordPress и знают, где искать, чтобы выяснить какие плагины можно использовать или какие-либо другие файлы, которые могут дать много информации о Вашем сайте, один из способов борьбы с этим является запрет на просмотр каталогов.
Options All -Indexes
Запрет на доступ к wp-content
Папка wp-content содержит изображения, темы и плагины, это очень важная папка WordPress, так что имеет смысл предотвратить несанкционированный доступ к ней.
Это потребует создания отдельного файла .htaccess, который должен находиться в папке wp-content, что позволит пользователям просматривать изображения, CSS-файлы и т.д., но защищает важные PHP-файлы:
Order deny,allow Deny from all <Files ~ ".(xml|css|jpe?g|png|gif|js)$"> Allow from all </Files>
Индивидуальная защита файлов
Есть определенные файлы, которые вы можете защитить отдельно, а не блокировать всю папку. Например данный код показывает как вы можете предотвратить доступ к файлу .htaccess. Имя файла может быть изменено на любой файл, который вы хотите защитить:
# Protect the .htaccess <files .htaccess=""> order allow,deny deny from all </files>
Защита .htaccess
Звучит безумно, да? Мы тратим так много времени, беспокоясь, все ли последние обновления безопасности установлены, но мы упускаем из виду тот факт, что файл .htaccess остается открытым для атак.
Этот код запрещает просмотр любого файла на вашем сайте, который начинается с ".hta", это защитит его и сделает немного более безопасным.
<Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>
Итак, мы рассмотрели как запретить доступ посторонним в админку, как предотвратить просмотр каталогов, защитить ваш файл wp-config.php, защитить папку wp-content и отдельные файлы, и даже как защитить файл .htaccess.
Этот список способов защиты отнюдь не исчерпывается данными вариантами, есть ряд других вещей, которые вы можете сделать, чтобы защитить ваш сайт с помощью .htaccess. Но способы, которые я показал, помогут защитить наиболее важные файлы и папки на вашем сайте и сохранить их вдали от любопытных глаз.
Перевод статьи с www.netmagazine.com
Если у Вас возникли вопросы, то для скорейшего получения ответа рекомендуем воспользоваться нашим форумом
Комментарии:
Добавить комментарий
www.webmasters.by