Настройка .htaccess для сайта на WordPress. Настройка htaccess для wordpress


Настройка файла .htaccess WordPress | SVsites

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

На самом деле настроек для .htaccess очень и очень много, все зависит опять же от поставленных задач.

Данные настройки являются первоначальными и подойдут для любого сайта на WordPress.

Начальная настройка файла .htaccess WordPress

AddDefaultCharset utf-8 AddType 'text/html; charset=utf-8' .html .htm .shtml <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule (.+)/feed /$1 [R=301,L] RewriteRule (.+)/comment-page /$1 [R=301,L] RewriteRule (.+)/trackback /$1 [R=301,L] RewriteRule (.+)/comments /$1 [R=301,L] RewriteRule (.+)/attachment /$1 [R=301,L] RewriteCond %{QUERY_STRING} ^replytocom= [NC] RewriteRule (.*) $1? [R=301,L] RewriteCond %{QUERY_STRING} ^attachment_id= [NC] RewriteRule (.*) $1? [R=301,L] RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # защита wp-config.php <Files wp-config.php> order allow,deny deny from all </Files> # защита htacces <Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>

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

Дополнительные настройки .htaccess WordPress

Помимо основных настроек файла .htaccess можно добавить на усмотрение еще несколько.

Указывем основной домен

Вариант без «WWW»:

# www rewrite RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Вариант с «WWW»:

# www rewrite RewriteCond %{HTTP_HOST} !^www\.(.*) [NC] RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

Редирект при смене протокола с http на https

Выбирайте любой вариант редиректа, который будет работать. Чтобы проверить, естественно нужно набрать домен с протоколом HTTP, должна произойти переадресация на HTTPS протокол.

RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Вместо site.ru, вписываем свой домен.

Еще вариант редиректа с http на https
# редирект с http на https RewriteCond %{HTTP:X-HTTPS} !1 RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Или так можно
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)\ HTTP/ [NC] RewriteCond %{HTTPS} off [NC] RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA,L]

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

svsites.ru

Настройка .htaccess для сайта на WordPress

У кого уже ломали сайт на WordPress, знают, что хакеры, как правило, изменяют файлы .htaccess и перенаправляют весь трафик от Google или Yandex на другой URL-адрес. Обычно инфицированный php закачивают в папку wp-content / uploads. Если вы используете VPS для вашего сайта, если это возможно, отключите .htaccess в конфигурации Apache и используйте «Дополнительные директивы Apache». Местоположение этой функции можно найти в панели управления вашего хостинга.

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

Отключение выполнения PHP скриптов в папке Uploads

Обычно хакеры копируют зараженные файлы или скрипты в директорию wp-content/uploads. В этой папке нет смысла хранить и тем более выполнять .php файлы. Создайте файл .htaccess в папке /wp-content/uploads/ и скопируйте код. Этот код отключит выполнение PHP внутри папки.

# Kill PHP Execution <Files *.php> deny from all </Files>
Защита wp-config.php

Для защиты файла wp-config.php от не авторизованных пользователей, скопируйте код и вставьте в .htaccess файл в корне сайта.

<files wp-config.php> order allow,deny deny from all </files>
Защита .htaccess от не авторизованных пользователей

Для защиты файла .htaccess от несанкционированного доступа, скопируйте и вставьте код в .htaccess .

<files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </files>
Отключение просмотра каталогов в WordPress

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

Options -Indexes
Блокировка выполнения межсайтовых скриптов (XSS)

Следующий фрагмент кода защищает ваш сайт от некоторых распространенных XSS атак , а именно от инъекций и скриптов. Если вы не используете XSS, рекомендуется отключить его.

# Blocks some XSS attacks <IfModule mod_rewrite.c> RewriteCond %{QUERY_STRING} (\|%3E) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) RewriteRule .* index.php [F,L] </IfModule>
Ограничение доступа в WP Includes

Папка /wp-includes/ содержит ядро WordPress. Для ограничения доступа к папке скопируйте и вставьте код в файл .htaccess.

# Blocks all wp-includes folders and 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>
Ограничение прямого доступа к PHP файлам плагинов и тем

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

# Restricts access to PHP files from plugin and theme directories RewriteCond %{REQUEST_URI} !^/wp-content/plugins/file/to/exclude\.php RewriteCond %{REQUEST_URI} !^/wp-content/plugins/directory/to/exclude/ RewriteRule wp-content/plugins/(.*\.php)$ - [R=404,L] RewriteCond %{REQUEST_URI} !^/wp-content/themes/file/to/exclude\.php RewriteCond %{REQUEST_URI} !^/wp-content/themes/directory/to/exclude/ RewriteRule wp-content/themes/(.*\.php)$ - [R=404,L]
Доступ с определенных IP

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

order deny,allow allow from [insert your IP address] deny from all

hastnet.ru

Настройка .htaccess. Полное руководство | GB: Блог о Wordpress и веб-разработке

Сегодня я хочу рассказать о htaccess, файле, который позволяет настраивать веб-сервер Apache. Директивы, которые прописываются в этом файле напрямую влияют на выдачу, которую формирует веб-сервер. Инструмент этот достаточно мощный, использовать его нужно с умом. Статья эта написана больше полугода назад, теперь я снова к ней возвращаюсь, чтобы сделать самым подробным мануалом на эту тему. Сразу напомню, прежде чем что либо менять в htaccess — сделайте копию вашего рабочего файла в укромное место. Мало ли, резервное копирование вообще хорошая вещь, не забывайте об этом. Я разделю статью на несколько подразделов — перенаправление страниц, запрет доступа к определенным файлам, ускорение сайта и прочие штуки, которые так или иначе могут пригодиться в работе ресурса.

Для начала — пару слов, что такое htaccess? Процитирую официальный сайт веб-сервера Apache:

.htaccess файлы (или «распределенные конфигурационные файлы») позволяют задавать большое количество дополнительных параметров и разрешений для работы веб-сервера в отдельных каталогах (папках), таких как управляемый доступ к каталогам, переназначение типов файлов и т. д, без изменения главного конфигурационного файла.

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

Директивы htaccess. Перенаправление

Блокируем хотлинки с других сайтов

Есть нехорошие товарищи, которые могут использовать картинки с вашего ресурса для использования в своих проектах. Они используют ваши изображения на своих сайтах, другими словами, используют вашу пропускную способность в своих целях, по аналогии с перемещением изображений на поддомен. Будем с ними бороться… Заменим любую картинку, на которую ведет хотлинк с другого сайта, на какое-нибудь предупреждающее изображение или на что хватит фантазии. В коде не забывайте менять адреса на ваши URL.

RewriteEngine On RewriteCond %{HTTP_REFERER} !^http://(.+\.)?ваш-урл\.com/ [NC] RewriteCond %{HTTP_REFERER} !^$ #Замените путь к картинке RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/noHL.jpg [L]

Перенаправим RSS фиды WordPress на Feedburner

Я не думаю, что кто-то пользуется чем-то другим, отличным от Feedburner. Удобно для пользователя, удобно для владельца блога, статистика, опять же. Если вы еще не используете — крайне рекомендую. Код ниже перенаправит все ваши RSS потоки на ваш аккаунт, не забывайте только вставить нужный адрес.

RedirectMatch 301 /feed/(atom|rdf|rss|rss2)/?$ RedirectMatch 301 /comments/feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/

В этом примере идет перенаправление двух потоков: основного RSS и обновление комментариев, если посетитель подписан на обновления.

Изменим страницы ошибок

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

ErrorDocument 400 /errors/badrequest.html ErrorDocument 401 /errors/authreqd.html ErrorDocument 403 /errors/forbid.html ErrorDocument 404 /errors/404.html ErrorDocument 500 /errors/serverr.html #Замените /errors/*.html на путь к вашим страницам ошибок

В этом примере идет перенаправление в случае основных ошибок. 404 я тоже добавил, хотя CMS обычно отрабатывают такие моменты, но бывали случаи.

301 и 302 редирект или перенаправление

301 редирект или, так называемое постоянное перенаправление — говорит о том, что страница поменяла адрес или URL и перенаправляет на новую страницу. Если у вас на сайте была проиндексированная ПС страница, а вы поменяли ее адрес — в обязательном порядке сделайте 301 редирект на новую страницу. При 301 редиректе старая страница не индексируется, а вместо нее «подставляется» новая.

RewriteEngine on Redirect 301 /old-page http://ваш-урл.ру/new-page

Собственно, похожий пример внимательный читатель увидит выше, в случае перенаправления RSS. Да, технология та же. Бывает так, что сайт переезжает на новый домен, нужно сохранить структуру ссылок, а их могут быть сотни и тысячи, на каждую установить перенаправление нереально. Код ниже поможет разобраться с такой ситуацией:

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) [R=301,L]

Есть интересная методика «скрытия» внешних ссылок путем 301 редиректа. Допустим, у вас есть «сквозная» ссылка в сайдбаре, которая ведет на ваш профиль в Google+, она внешняя, то есть ведет на внешний ресурс. Для SEO очень хорошо, когда таких ссылок как можно меньше. Можно спрятать их и сделать внутренними.

Технология производства внутренних ссылок из внешних:

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

RewriteEngine on Redirect 302 /old-page http://ваш-урл.ру/new-page

Код абсолютно такой же, как в случае с постоянным перенаправлением. 302 редирект удобно использовать, когда проводятся какие-либо долгосрочные работы на сайте и не нужно показывать посетителям «поломанные» страницы. В таком случае вам поможет этот код:

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

Склеиваем сайты с www и без него

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

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

В этом примере — главное зеркало это адрес без www. Если необходимо сделать наоборот — поменяйте www местами, сверху уберите, внизу добавьте.

Показ страниц в зависимости от IP

SetEnvIf REMOTE_ADDR 192.168.0.1 REDIR=&amp;quot;redir&amp;quot; RewriteCond %{REDIR} redir RewriteRule ^/$ /about.html

Добавлять адреса можно дублированием первой строки, в последней — меняется страница для перенаправления.

Перенаправляем на главную

Перенаправление со страниц site.com/index.php и site.com/index.html на страницу site.com/. За код спасибо Василию Красноженову.

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/ RewriteRule ^index\.html$ http://site.com [R=301,L] RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ RewriteRule ^index\.php$ http://site.com [R=301,L]

Директивы htaccess. Разделяем доступы

Запрет доступа к сайту

Бывает такое, что необходимо запретить доступ посетителям с определенного IP, спамерам или еще кому нехорошему.

Order Allow,Deny Allow from all Deny from 192.168.0.1

Добавлять IP в список можно просто добавляя последнюю строку и меняя там адрес на нужный. Противоположная ситуация, когда всем нужно запретить, кроме некоторых IP, тогда используем такой код:

Order Deny,Allow Deny from all Allow from 192.168.0.1

Добавлять адреса аналогично предыдущему примеру.

Запрещаем просмотр нежелательным User-Agent

Каждый браузер или приложение, которое запрашивает страницу, так или иначе имеет идентификатор — 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

Полный список известных User-Agent вы можете найти на сайте http://www.user-agents.org/

Запрещаем доступ к определенному файлу

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

# защищаем wpconfig.php &amp;lt;Files wp-config.php&amp;gt; order allow,deny deny from all &amp;lt;/Files&amp;gt; #защищаем htaccess &amp;lt;Files .htaccess&amp;gt; order allow,deny deny from all &amp;lt;/Files&amp;gt;

Аналогично можно защитить css и js файлы, которые используются плагинами:

&amp;lt;Files ~ &amp;quot;\.(js|css)$&amp;quot;&amp;gt; order allow,deny allow from all &amp;lt;/Files&amp;gt;

Скачивание определенных типов файлов

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

AddType application/octet-stream .pdf AddType application/octet-stream .zip AddType application/octet-stream .avi

Ограничение на доступ к админке WordPress

Если у вас постоянный IP адрес, можно только ему давать доступ к админ-панели WordPress

AuthUserFile /dev/null AuthGroupFile /dev/null AuthName &amp;quot;Example Access Control&amp;quot; AuthType Basic &amp;lt;LIMIT GET&amp;gt; order allow, deny deny from all allow from Ваш IP &amp;lt;/LIMIT&amp;gt;

Директивы htaccess. Техническая оптимизация и ускорение

Запрещаем автоматическое индексирование файлов

В каждой папке на сайте Apache создает, по умолчанию, индексные файлы, в которых перечисляется, какие файлы в папке находятся. Если вы не хотите давать дополнительную лазейку для злоумышленников — запретите индексирование.

Options -Indexes

Включаем gzip сжатие

Вы знаете о том, что данные на сервере можно сжать, а клиент их распакует у себя? Код ниже как раз включает такую штуку. Нужно только убедиться, что gzip разрешен на вашем хостинге, но обычно он есть.

&amp;lt;FilesMatch &amp;quot;\.js.gz$&amp;quot;&amp;gt; ForceType text/javascript Header set Content-Encoding: gzip &amp;lt;/FilesMatch&amp;gt; &amp;lt;FilesMatch &amp;quot;\.css.gz$&amp;quot;&amp;gt; ForceType text/css Header set Content-Encoding: gzip &amp;lt;/FilesMatch&amp;gt; &amp;lt;FilesMatch &amp;quot;\.js$&amp;quot;&amp;gt; ForceType text/javascript RewriteEngine On RewriteCond %{HTTP_USER_AGENT} !&amp;quot;.*Safari.*&amp;quot; RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{REQUEST_FILENAME}.gz -f RewriteRule (.*)\.js$ $1\.js.gz [L] ForceType text/javascript &amp;lt;/FilesMatch&amp;gt; &amp;lt;FilesMatch &amp;quot;\.css$&amp;quot;&amp;gt; ForceType text/css RewriteEngine On RewriteCond %{HTTP_USER_AGENT} !&amp;quot;.*Safari.*&amp;quot; RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{REQUEST_FILENAME}.gz -f RewriteRule (.*)\.css$ $1\.css.gz [L] ForceType text/css &amp;lt;/FilesMatch&amp;gt;

Код не работает для изображений, но к ним применять gzip не рекомендуется. Именно такой код установлен у меня.

Сжатие с применением mod_deflate

Ходят слухи, что с помощью этого мода сжимать данные лучше и сайт работает быстрее. Я не могу протестировать, да и не встречал в Интернете подобных тестов. Если у кого есть такая информация — буду благодарен. А код выложу, мало ли

&amp;lt;ifmodule mod_deflate.c=&amp;quot;&amp;quot;&amp;gt; &amp;lt;filesmatch &amp;quot;.(js|css)$&amp;quot;=&amp;quot;&amp;quot;&amp;gt; SetOutputFilter DEFLATE &amp;lt;/filesmatch&amp;gt; &amp;lt;/ifmodule&amp;gt;

Включаем кэширование браузера клиента

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

Header append Cache-Control &amp;quot;private&amp;quot; FileETag MTime Size ExpiresActive On ExpiresDefault &amp;quot;access plus 0 minutes&amp;quot; ExpiresByType image/ico &amp;quot;access plus 1 years&amp;quot; ExpiresByType text/css &amp;quot;access plus 1 years&amp;quot; ExpiresByType text/javascript &amp;quot;access plus 1 years&amp;quot; ExpiresByType image/gif &amp;quot;access plus 1 years&amp;quot; ExpiresByType image/jpg &amp;quot;access plus 1 years&amp;quot; ExpiresByType image/jpeg &amp;quot;access plus 1 years&amp;quot; ExpiresByType image/bmp &amp;quot;access plus 1 years&amp;quot; ExpiresByType image/png &amp;quot;access plus 1 years&amp;quot;

Указываем кодировку по умолчанию

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

AddDefaultCharset UTF-8

Ограничиваем число подключений к сайту

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

MaxClients &amp;lt;количество подключений&amp;gt;

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

Разрешаем выполнение php внутри JavaScript

Иногда необходимо выполнить некоторый код внутри скрипта. Этот код поможет включить эту функцию

AddType application/x-httpd-php .js AddHandler x-httpd-php5 .js &amp;lt;filesmatch &amp;quot;\.(js|php)$&amp;quot;&amp;gt; SetHandler application/x-httpd-php &amp;lt;/filesmatch&amp;gt;

Вот и все, что касается htaccess и его стандартного использования. Я не стал упоминать о защите папок паролями, потому что не считаю это правильным, о «защите» от спама, путем блокировки запросов запросов без передачи Referer, потому что все современные спам-машины давно умеют это делать. Ну и прочие вещи, которые не считаю грамотно реализованными.

Напоследок хочу представить вам сервис тестирования вашего htaccess файла — http://htaccess.madewithlove.be/. Там все просто, удачного дня

gering111.com

Настройка robots.txt и .htaccess в WordPress

На данный момент WordPress является самой популярной CMS не только для ведения блога, но и для сайтов различных типов. Для успешного развития сайта на нем необходимо правильно настроить файлы robots.txt и .htaccess. Об этом и будет речь.По большей части этот материал предназначен мне «на память». Возможно он поможет еще кому-то.

Итак, файл robots.txt для WordPress может выглядеть примерно так:

User-agent: * 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 User-agent: Yandex 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 Host: site.ru Sitemap: http://site.ru/sitemap.xml

Одним словом — данный файл закрывает от индексации поисковиками все то, что индексировать не нужно. Плюс указывает на xml карту сайта, а директива host определяет главное зеркало сайта (с www или без www).

Склейка доменов в .htaccess WordPress

Если вам необходимо склеить домены (с www и без), то воспользуйтесь одним из нужных вам способов.

Главный домен без www (301 редирект с www на без www):

RewriteEngine on RewriteCond %{HTTP_HOST} ^www.site.ru RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

Обратный вариант — главный домен с www

RewriteEngine On RewriteCond %{HTTP_HOST} ^site.ru RewriteRule (.*) http://www.site.ru/$1 [R=301,L] Меток нет. Похожие записи Запись опубликована в рубрике WordPress. Добавьте в закладки постоянную ссылку.

kumatoz.ru


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

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