четверг, 29 сентября 2016 г.

Урок № 9. Настройка дополнительных файлов robots, .htaccess

Начнем с ROBOTS.TXT 

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: /code
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: /tag
 Host: hostland.ru
 Sitemap: http://мойсайт.ru/sitemap.xml.gz
 Sitemap: http://мойсайт.ru/sitemap.xml


Меняем данные на свои в последних строчках и пользуемся!

Создание  Sitemap

Карта сайта.
В интернете представлено большое количество ресурсов, позволяющих создать файл Sitemap автоматически. Рекомендую использовать формат XML, так как он позволяет предоставлять дополнительную информацию о страницах сайта. Количество файлов, которые можно указать для одного и того же домена, не ограничено. На основном сайте можно узнать детали: 
http://www.sitemaps.org/ru/faq.html#faq_xml_schema



В карту сайта следует включать только те страницы, которые должны быть в поисковом индексе. Документы с запрещенной к индексированию или служебной информацией не следует вносить в Sitemap. В карту сайта также не включают страницы с тегами и динамические URL-адреса.

НАСТРОЙКА .htaccess


О нем я чуть по-одробнее. Как вы наверняка поняли есть плагин BulletProof, он в целом не плох. НО! Если вы оптимизатор или как я уже наложивший на свой блог 10 и более плагинов, то призываю одуматься и прописать ручками настройку вашего .htassecc. Тем более, что делается это очень просто по шаблонам и много времени не займет, а плагин будет создавать нагрузку на сайт.
Код стандартного файла 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 и будет вам счастье:
=============================================

# BEGIN WordPress
<IfModule mod_rewrite.c>
Options +FollowSymLinks -Indexes
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule (.+)/feed /$1 [R=301,L]
RewriteRule (.+)/attachment /$1 [R=301,L]
RewriteRule (.+)/comment-page /$1 [R=301,L]
RewriteRule (.+)/comments /$1 [R=301,L]
RewriteRule (.+)/trackback /$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
<Files wp-config.php>
# Запрещаем всем доступ к файлу wp-config.php
order allow,deny
deny from all
</Files>
<Files .htaccess>
order allow,deny
deny from all
</Files>


# END WordPress


==============================================



Закрыть файлы и папки от просмотра.
К примеру, эта часть закрывает пользователям листинг файлов и папок на сервере:


Options +FollowSymLinks -Indexes

Но можно и так:

Запрет просмотра папок сайта

Options All -Indexes

Защита любого файла от доступа. 
Если Вам нужно ограничить только отдельные файлы, то, защита для .htaccess будет выглядеть так:
<Files .htaccess>
order allow,deny
deny from all
</Files>

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

<Files wp-config.php>
# Запрещаем всем доступ к файлу wp-config.php
order allow,deny
deny from all
</Files>


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

AddDefaultCharset UTF-8

Кеширование. 
Оптимальное решение кеширования для всех типов файлов, можно описать следующей конструкцией:

# Включаем кэш в браузерах посетителей 
<ifModule mod_headers.c> 
# Все html и htm расширения будут храниться в кэше браузера один день 
<FilesMatch "\.(html|htm)$">
 Header set Cache-Control "max-age=43200" 
</FilesMatch> # Все css, javascript и txt форматы, будут храниться в кэше браузера одну неделю <FilesMatch "\.(js|css|txt)$"> 
Header set Cache-Control "max-age=604800" 
</FilesMatch>
 # Все флэш и изображения будут храниться в кэше браузера один месяц 
<FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$"> 
Header set Cache-Control "max-age=2592000" 
</FilesMatch> 
# Отключаем кеширование php и других расширений
 <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"> 
Header unset Cache-Control 
</FilesMatch>
 </IfModule>

Редирект.
Настроим правильный редирект ( это необходимо сделать когда у вас происходит замена файлов или сайта) : 301 — постоянный редирект, 302 — временный. Можно сделать перенаправление сайта с сайта с WWW  на сайт без WWW:

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

И наоборот:

RewriteEngine On RewriteCond %{HTTP_HOST} ^
САЙТ.ru RewriteRule (.*) http://www.САЙТ.ru/$1 [R=301,L]

Эта часть кода отвечает за 301 редирект со страниц дублей, дабы не распылять вес и не создавать себе проблем в виде соплей в google:


RewriteRule (.+)/feed /$1 [R=301,L]
RewriteRule (.+)/attachment /$1 [R=301,L]
RewriteRule (.+)/comment-page /$1 [R=301,L]
RewriteRule (.+)/comments /$1 [R=301,L]
RewriteRule (.+)/trackback /$1 [R=301,L]


Защита от хотлинков. 
Хотлинк — это использование вашего контента (в основном тяжелого, видео и аудио) на чужих площадках. По сути это воровство интеллектуальной собственности, и с этим борются путем редиректа.

<IfModule mod_rewrite.c> 
RewriteEngine On <br >
#В строке с ?yoursite\.ru/ меняете данную конструкцию на УРЛ Вашего сайта<br > RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yoursite\.ru/ [NC]<br >
RewriteCond %{HTTP_REFERER} !^$<br >
#Меняем /images/exit.jpg на другое изображение.<br >
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/exit.jpg [L] 
</IfModule>

Доступ по одному IP. 
Защита административной панели WP предоставлением доступа только для одного IP.

<Files wp-login.php>
Order Deny,Allow 
Deny from all 
Allow from 192.192.0.100 
</Files>
Где 192.192.0.100 это ваш постоянный IP адрес. Если адрес не постоянный (каждый раз при перезагрузке меняется) эту конструкцию использовать не получиться.

Редирект для партнерских программ
Допустим, вы решили перенаправить пользователя на страницу с партнерской программой. Код партнерки выглядит следующим образом: http://www.seosprint.net/?ref=1386997. Увидев такую ссылку, большинство пользователей не будут по ней переходить, заранее зная о ваших намерениях.

Для того, чтобы ссылка приняла привлекательный вид, вам необходимо создать отдельную страницу, например partnerskaya.html, с которой и будет идти перенаправление пользователя на страницу с партнерской программой. Теперь останется разместить ссылку на страницу usenko-wp/partnerskaya.html, а в файле .htaccess прописать следующее:

redirect 301 partnerskaya.html http://www.seosprint.net/?ref=1386997

Редирект при изменении страниц. 
Вы решили изменить название страницы. Старое имя страницы имело вид straniza.html, новое имя straniza-1.html. В этом случае вам нужно будет прописать в файле .htaccess следующую конструкцию:

redirect 301 straniza.html http://www.САЙТ.ru/straniza-1.html

И на по следок запретим воровать наш контент.

Напишем вот такой код:


RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?yourdomain.com/.*$ [NC]
RewriteRule .(gif|jpg)$ http://www.САЙТ.ru/hotlink.gif [R,L]

Подгрузим файл hotling.gif , где напишем. что воровать не хорошо!

Комментариев нет:

Отправить комментарий