Войти Регистрация

Вход на сайт

Логин *
Пароль *

Правильный htaccess для WordPress

Воскресенье, 11 октября 2015 14:30 Автор 

Файл .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>

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

Stanislav

Master's Degree

Сайт: skopil.ru
Авторизуйтесь, чтобы получить возможность оставлять комментарии

Новые статьи

  • Сбой при обновлении расширений Regular Labs
    Сбой при обновлении расширений Regular Labs

    Давно пользуюсь различными расширениями от студии Regular Labs, но недавно при очередном обновлении через панель администратора Joomla я получил ошибку обновления. При этом не все расширения выдавали такую ошибку. Разумеется, решение было найдено, делюсь :)

    Подробнее ...
  • Adobe Photoshop - чёрный экран при создании нового файла
    Adobe Photoshop - чёрный экран при создании нового файла

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

    Подробнее ...
  • Intel Dual Band Wireless-AC 7260. Ошибки.
    Intel Dual Band Wireless-AC 7260. Ошибки.

    Для тех, кто решил установить себе модуль WiFi/Bluetootth с поддержкой двух диапазонов WiFi от компании и столкнулся с ошибками Bluetooth код 43 или код 10, а также с отсутствием поддержки режима "ac" WiFi, собственно и пригодится данная статья, в которой я опишу решение данных проблем.

    Подробнее ...
  • RSForm прокрутка вверх страницы многостраничной формы
    RSForm прокрутка вверх страницы многостраничной формы

    Рассмотрим еще одно небольшое, но очень важное усовершенствование мощного конструктора форм RSForm для CMS Joomla. На этот раз затронем многостраничную форму, когда очень большая форма разбивается с помощью инструмента "Разделитель страниц" на несколько страниц с навигацией. Не расписываю как это делается, предполагается, что у нас уже есть подобная форма и нужно её немного поправить для лучшей визуализации.

    Подробнее ...
  • RSForm маска ввода телефона
    RSForm маска ввода телефона

    Столкнулся с очень интересным и мощным конструктором форм RSForm под управлением Joomla CMS. Кто хоть раз им пользовался понимает, что функционал данного конструктора сразу не освоить, а умеет этот компонент очень много! Не буду сильно расписывать данный конструктор, а перейду непосредственно к теме статьи. Хочу поделиться простым способом подключения ввода телефонного номера по определенной маске.

    Подробнее ...
  • Страница 404 ошибки в Joomla 3 с помощью пункта меню
    Страница 404 ошибки в Joomla 3 с помощью пункта меню

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

    Подробнее ...
  • Webasyst. Не работает локализация
    Webasyst. Не работает локализация

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

    Подробнее ...