Перейти к содержимому



Внутренняя оптимизация сайта от «А до Я»

#1 Ixman
Ixman
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843
12

Отправлено 26 Декабрь 2018 - 17:58

*
Популярное
сообщение!

Очень часто на форум приходят новички сайтостроя и вэбмастеринга с вопросами «что? как? почему?», с просьбами оценить и подсказать что не так по сайту, и т. п. У некоторых уже есть сайты и какой-то опыт, у некоторых ещё нет ни того, ни другого. Статья нацелена на группу именно таких пользователей, дабы дать им план и руководство к действию по анализу, оптимизации и улучшению своего сайта.

Зачастую начинающие оптимизаторы имеют ошибочные знания по объёму работ, которые надо бы произвести перед самым началом старта сайта, а готовые CMS и плагины не блещут высокой оптимизацией. И поэтому совершают типичные ошибки. Но никогда не поздно начать улучшать свой сайт. Поэтому приступим к рассмотрению того, чего возможно вы ещё не знали, либо не предавали значения некоторым мелочам и нюансам внутренней оптимизации сайта.
 

Общая оптимизация сайта
 
Семантическое ядро сайта

Семантическое ядро (далее СЯ) – это набор ключевых слов и словосочетаний, состоящих из поисковых запросов отражающих целевой спрос интернет пользователей, и соответствующих представлениям посетителей о той информации которая, по их мнению, должна присутствовать на сайте.

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

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

В первую очередь стоить обратить внимание на такие программы, как KeyCollector (KC) и Словоёб. Последний бесплатен и имеет ограниченный функционал. Но его на первых парах должно хватить с лихвой. Для начала рекомендую освоить именно его. Для работы с KC нужно учиться, он сложен, но мега функционален.
Среди онлайн инструментов выбор весьма широк. Разделим их на две группы:
 
Бесплатные:

  • wordstat.yandex.ru
  • ads.google.com

Платные:

  • seranking.ru
  • serpstat.com
  • spywords.ru
  • ru.semrush.com

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

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

  • Базы Пастухова (pastukhov.com)
  • Букварикс (bukvarix.com)
  • UpBase (ушёл в прошлое, а жаль был очень удобным).

Ну и самое злачное, но труднодоступное место по сбору СЯ, это конечно же данные систем аналитики (Google Analytics, Яндекс Метрика, LiveInternet и т. д.). Вот тут можно найти самые что ни на есть живые ключевые слова. Не сгруппированные или обобщённые, а именно те, по которым ищут пользователи, с реальными данным по переходам на сайты. Достать сложно, но можно…
 

Структура сайта
 
Ещё одним важным моментом, который должен быть продуман на стадии разработки сайта, это его структура. Но, как я уже говорил выше, никогда не поздно оптимизировать. От правильной структуры зависит и удобство пользования сайтом (юзабилити), и его индексируемость поисковыми системами, и грамотное распределение статического веса путём перелинковки страниц меж собой.

Углубляться здесь в подробности не будем, так как структура индивидуальна для разных типов сайтов, тематик и возможностей CMS. Но схематично рассмотрим классическую структуру большинства сайтов на очень упрощённом примере.
 
b3f5b55f3f.jpg
 
Как видно из схемы, это древовидная структура. Здесь есть главная страница, три страницы второго уровня, две из которых, например, категории. Каждая категория в свою очередь содержит дочерние страницы. Это могут быть посты в блоге, страницы товаров в магазине, новости…

При такой структуре очень удобно распределять статический вес между страницами. Используя стандартные методы перелинковки в виде хлебных крошек, похожих записей и ссылок на морду с каждой страницы. Но о перелинковке и весе, я расскажу чуть позже, а сейчас о структуре URL и ЧПУ.

Структура URL один из важных моментов в оптимизации сайта, тесно взаимосвязанный и отражающий структуру сайта в целом, влияющий на скорость и глубину индексации и визуальное восприятие пользователем WEB адреса (ЧПУ). Ещё в URL можно и нужно использовать ключевые слова вместо имён файлов и числовых идентификаторов.
 

ЧПУ (Человеко-понятный урл) - жаргонное название WEB адреса, содержащего читаемые слова, а не аббревиатуры или числовые идентификаторы, написанные латинским алфавитом, отражающее вложенность директорий и название элемента. Часто имеет следующий вид /cat/Reference/Encyclopedias/General_encyclopedias/...
wikipedia


Основной принцип ЧПУ гласит о построении URL в виде каталожной структуры, для более лучшего восприятия человеком. Считается, что такие WEB адреса лучше читаются и понимаются, плюс используются для более быстрого перемещения по сайту, путём затирания или замены части URL в строке браузера. Но на самом деле сегодня всё обстоит иначе.

Чем меньше вложенность каталогов в URL адресе и чем ближе вложенность к корню сайта, тем быстрее сайт индексируется и страницы отображаются в выдаче. Излюбленный приём дорвейщиков не использовать вложенность вовсе, страницы от корня (site.ru/some-page) моментально залетают в индекс, но для нормального сайта это не удобно.
 
Плюс экспериментально доказано, что не преобразованные страницы индексируются в гораздо больших объёмах, а сложные каталожные структуры с глубоко вложенными страницами наоборот. Но это не значит, что нужно отказаться от ЧПУ, попросту его нужно использовать с учётом реалий.

Любая полезная страница должна быть доступна для пользователя в два – три клика от главной, соответственно и структура ЧПУ должна быть примерно такой же. Например,
 

site.ru/news/news-name, site.ru/blog/category-name/article-name

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

В ЧПУ можно использовать как английское написание название разделов и ключевых слов, так и транслитерированное. Но обратите внимание, что Google и Яндекс по-разному воспринимают транслит некоторых букв. А ещё дурным тоном, считается использование кириллических URL. При копировании такие ЧПУ кодируются и при вставке уже не имеют читаемый вид.
 
 
Перелинковка
 
Перелинковка – это процесс создания ссылочных связей между сайтами и их страницами, для наращивания веса (авторитета, траста) как отдельных страниц, так и сайта в целом. А также более удобной навигации.
 
Перелинковка бывает внешней и внутренней, то есть ссылочные связи создаются между страницами разных сайтов, либо в рамках одного WEB ресурса.

Зачастую обучающие статьи про перелинковку не рассказывают про вес страниц, либо рассказывают, но не открывают суть. А важность ссылочных связей как раз лежит в понимании статического и ссылочного веса у страниц. Давайте рассмотрим, что это такое и как влияет на оптимизацию сайта.

Статический вес – это условная величина (N), присваиваемая каждой WEB странице индивидуально. Рассчитывается путём сложения базовой величины страницы (Nb) и суммы величин, перетекающих по всем входящим ссылкам (Nin), за вычетом части величин, перетекающих по всем исходящим ссылкам (Nout). Остаток и есть статический вес страницы.

Сложно для восприятия, но понять можно. Получается, что каждая страница по умолчанию имеет некоторое количество веса. Ведь входящих ссылок может и не быть, а исходящие как правило всегда есть, поэтому странице нужно что-то отдавать, но не полностью. Для этого, некоторая часть веса резервируется, а оставшаяся раздаётся по исходящим ссылкам.
 
37aaf6c201.jpg
 
Из схемы видно, что 7.5 кг веса :D страница оставляет себе, а по 5.6 отдаёт на другие страницы по четырём исходящим ссылкам.

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

Вся выше приведённая схема весьма условна и сильно упрощена для лучшего восприятия. Реальные алгоритмы будут куда намного сложнее и индивидуальны для поисковых систем. Да и не известны они простым смертным.
Самое важное здесь то, что вы можете распределять вес самостоятельно. Вы можете контролировать куда его отдать больше, а куда нет передавать вообще путём грамотной внутренней расстановки ссылок. А поможет вам контролировать этот процесс утилита PageWeight Desktop, которая неплохо справляется с расчётом статического веса страниц.

Ссылочный вес – величина WEB страницы, измеряемая количеством, качеством и разнообразием ключевых слов и фраз в анкорах входящей ссылочной массы. А также местоположение ссылок в контенте страницы.
Получается, чем богаче анкор-лист, чем качественнее ссылающиеся доноры и чем больше их статический вес, тем больше получаемый ссылочный вес страницы. Чем больше перетекает статического веса по ссылке, тем весомей её анкор для продвижения в поисковых системах. Таким образом можно продвигать страницы, по ключевым словам, которых на ней нет. Проверено лично ;)

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

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

Контекстные – это ссылки, которые находятся в основном контенте страницы. Это может быть статья, новость, описание продукта/услуги и т. п. Одна из самых эффективных ссылок для перелинковки, так как её анкор может содержать любой нужный вам ключ, лаконично вписанный в контекст содержимого. Такие ссылки легко планируемы на стадии написания статьи.

Полезные – это блоки ссылок, за частую, расположенные после основного материала страницы. Яркий пример, блоки схожих записей, рекомендованных товаров, популярных страниц, просто полезной информации и т. д. Просто отличное место для разбивки анкор-листа, но как правило такие блоки CMS формируют автоматически на основе заголовка и вырезки из начала статьи.
 
Сквозные – это блоки ссылок, расположенные на всех страницах сайта, либо на определённых группах страниц. В качестве примера, можно привести верхнее навигационное меню или блоки полезных разделов в подвале. В анкорах таких ссылок рекомендуется использовать самые важные для продвижения ключи.

Кроме расположения и назначения ссылочных блоков ещё существует ряд схем для создания ссылочных взаимосвязей между страницами. Но перечислять и описывать я их не буду, так как это весьма индивидуально для разных типов сайтов. Для примера рассмотрим более универсальный и надёжный вариант схемы перелинковки.
 
0989c29cf9.jpg
 
На схеме показана перелинковка из двух колец, где страницы первого кольца (зелёные) перелинкованы между собой, а второго (серые) перелинкованы и меж собой и меж страницами первого кольца. Весь собранный вес перетекает в центр, на продвигаемую страницу. Схема идеальна тем, что любая выпавшая из индекса второстепенная страница не разорвёт полностью цепь. В центре, например, может быть морда, зелёные это рубрики, а серые - посты.

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

  • Много ссылок на странице не очень хорошо, особенно на внешние ресурсы. Но и не ссылаться ни на кого тоже плохо.
  • Помните внешние ссылки отдают вес страницы фактически безвозвратно. Однако бытует мнение, что если ссылаться на очень трастовые ресурсы, то это только плюс для продвижения страницы.
  • Не используйте дважды одну и ту же ссылку на одной странице, либо как минимум используйте разные анкоры. Считается что такие ссылки склеиваются, либо одна попросту не учитывается.
  • Чем разнообразнее анкор-лист у ссылки на конкретную страницу, тем по большему числу ключей можно продвинуть эту страницу.
  • Хорошим тоном считается иметь в логотипе шапки ссылку на главную страницу. Но не хорошо, когда страница ссылается сама на себя. То есть на морде ссылки в логотипе не должно быть.
  • Каждая страница сайта должна ссылаться на главную, а главная как минимум должна ссылаться на все основные разделы сайта.
  • Во всём нужно знать не меру. В первую очередь ссылки должны нести удобство для пользователей.

Как видите, перелинковка — это очень мощный инструмент для продвижения, который зачастую используется не на всю мощь. Для большинства многостраничных сайтов, правильно распределяя вес, можно продвигать нужные страницы используя только внутренние ресурсы. Но увы как правило этот инструмент сильно ограничен техническими возможностями CMS и весьма кропотливым трудом.
 
 
Мобильность сайта
 
Ещё несколько лет назад было хорошим тоном иметь мобильную версию сайта. Сегодня это неотъемлемый атрибут любого WEB ресурса, так как мобильный трафик по объёму в разы превышает десктопный. Но технологии не стоят на месте и сейчас версии, адаптированной для удобного просмотра с мобильных устройств, уже недостаточно. Это уже не просто фактор ранжирования, а целый ряд требований не только к наличию, но и к качеству такой версии сайта. Поэтому не оптимизировать эту часть сайта уже попросту нельзя.

Существует не один вариант отображения контента для мобильных гаджетов, среди которых отдельные версии со своим дизайном, либо адаптивные, подстраивающиеся под разные экраны.  Ещё есть AMP страницы для Google поиска, и Турбо страницы для Яндекса. Все они имеют свои преимущества и недостатки. Но чтобы быть в тренде уже не обходимо внедрять технологии PWA. Давайте рассмотрим, что тут к чему.
 
 
Адаптивность

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

Во-первых, самый большой недостаток - это громоздкий файл стилей, который должен описать правила адаптации под все возможные экраны. А размеров дисплеев сегодня превеликое множество. От самых маленьких старых смартфонов, до гигантских TV экранов. Сюда же можно добавить более громоздкий HTML код страницы, который должен порой описать разные варианты отображения контента для разных устройств.

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

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

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

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

По существу, это абсолютно разные технологии, но призванные добиться одного и того же результата -  быстрой загрузки на экранах мобильных устройств облегчённых версий WEB страниц даже при медленном подключении к сети интернет. По факту поисковики предлагают размещать на первых позициях в мобильном поиске страницы оптимизированные по этим технологиям: AMP для Google, Турбо для Яндекс.

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

Всё дело в том, что вы не сможете на таких страницах показывать объявления той рекламной сети, с которой привыкли работать. Стандарты ограничиваются только определёнными сетями. Не берусь делать выводы, но всего скорее здесь корыстный мотив собственной наживы, под красивыми лозунгами. Кому же всё-таки это нужно, предлагаю детально изучить данный вопрос.
 
 
Progressive Web Application - PWA

PWA – прогрессивное WEB приложение это технология взаимодействия с пользователем на подобии приложения, но работающее в среде браузера. Это может быть версия сайта, очень похожая на приложение для смартфона со своей иконкой на рабочем столе и всплывающими уведомлениями, которая призвана работать мгновенно с любым качеством сетевого соединения, порой даже офлайн, на любом типе устройств не зависимо от размера экрана, ОС и её версии.

Иными словами, нам дали в руки мульти платформенный инструмент, для возможности создать некую очень быстро работающую версию сайта, который позволяет эмулировать приложение для смартфонов и планшетов. Мы можем управлять иконкой, названием, внешним видом приложения и некоторыми другими параметрами. О том, как это реализовать рассказал @r0mZet в этой теме.
 
Хоть и бытует мнение, что быстрота загрузки сайта не особо влияет на его положение в выдаче, но последние технологии очень сильно ориентированы на скорость, быстродействие и работу с медленным сетевым коннектом. Поэтому здесь важна каждая мелочь, при оптимизации нужно учитывать все возможные изъяны и недостатки той или иной реализации мобильной версии сайта, экономить по возможности каждый байт. Ведь как известно «время – деньги».
 
 
Семантическая разметка

Семантическая разметка – это набор HTML тегов и атрибутов, призванных для организации правильной и грамотной разметки web страниц, путём которой поисковики не только лучше понимают структуру страниц, но и за её счёт формируют сниппеты в выдаче. То есть это теги не только для определения визуальных частей страниц, но и для их разделения на блоки определённой важности и назначения.

Большинство семантически значимых тегов используются неправильно из-за отсутствия полного понимания для чего тот или иной тег у новичков и даже бывалых мастеров. Зачастую это происходит из-за изначально неправильной вёрстки в шаблонах популярных CMS, коими пользуется большинство. Верстальщики делают как им удобно, используя семантические теги, как удобные селекторы для обозначения элементов страниц, а потом это работает как есть. Далее рассмотрим перечень, очевидных для многих, HTML тегов, мета тегов и атрибутов, их назначения и правильного использования.

<article> - тег для выделения самого важного текста на странице, например, для статьи, новости или описания товара. Использовать однократно. Не рекомендуется применять для выдержек из статей на страницах перечислений (категорий).

<aside> - тег для выделения технических блоков, либо блоков, которые не важны для продвижения страниц. Призван показать поисковикам о не особой значимости того или иного элемента HTML документа.

<b>, <strong> - оба тега визуально выделяют жирным, но логика выделения у них всё же разная. Тег b для стилистического выделения, а strong для выделения более значимых элементов.

<footer> - тег для выделения каких-либо «нижних» элементов страницы. Это не обязательно фактический подвал WEB страницы. Например, это может быть подвал сайдбара или ещё какого элемента.

<header> - тег для выделения верха/шапки составного элемента страницы. Противоположность предыдущего тега.

<h1> - <h6> - это семейство тегов заголовков и подзаголовков. Индекс внутри тега указывает на разрешённое количество размещений на странице и иерархию. То есть h1 можно использовать только один раз, а h6 – шесть раз. Тег h2 не может быть размещён на странице без тега h1, или выше его. Тоже самое применимо и к остальным. Не рекомендуются внутри этих тегов использовать другие теги.

Что касаемо тега h1 это второй по значимости заголовок на любой WEB странице. Заполнять также нужно с использованием основных ключевых слов. Содержимое ни в коем случае не должно повторять заголовок title, а ключи оптимально разбавлять и не использовать в той же форме, что в title.
 
<i>, <em> - теги визуально делают текст наклонным, но логика выделения разная. Тег i применим для выделения иностранных, либо технических слов, а тег em для выделения эмоциональных слов, либо слов, произнесённых иначе.

<meta name=”description”> - выделю как самый важный мета тег страницы для продвижения. По факту его назначение сводиться к формированию сниппета поисковой выдачи. Заполнять нужно его привлекательной, хорошо читаемой, информацией, дополняющей заголовок title. Оптимальная длина в 160 – 180 символов, макс. – 200. Основные ключевики лаконично встроены в описание, расположены по значимости от начала.

<meta name=”keywords”> - мета тег для перечисления ключевых слов и фраз. Данный мета тег фактически ушёл в прошлое, но некоторые заполняют его до сих пор.

<nav> - тег для выделения различного рода важных навигационных блоков. Это могут быть верхнее основное меню, либо хлебные кроки. Не рекомендуется выделять этим тегом блоки постраничной разбивки, либо перечни категорий.

<p> - тег для обозначения абзацев, в семантике для выделения значимых текстов на странице.

<section> - тег для логической разбивки страницы на составные части. Внутри себя может содержать свои header и footer. Оптимально применять для страниц со сложной структурой.

<title> - самый главный заголовок любой WEB страницы для её продвижения в поисковиках. Оптимальная длина 80 - 90 символов с пробелами и спецсимволами. Допустимо делать заголовок длиннее, если это оправдано. Заполнять самым значимым ключевым словом или фразой, можно использовать несколько, располагая их по значимости от начала. Причём тут не просто нужно перечислить ключи, а составить заголовок так, чтобы он дал пользователю исчерпывающую информации о том, что он найдёт на этой странице, и при этом был привлекательным.

<ul><li>, <ol><li> - теги для обозначения списков, либо нумерованных перечислений. Рекомендуется выделять ими все списки, какие есть на странице, так как поисковики не воспринимают такие выделения как единый текст и относятся к ним лояльно.

role=”main” - атрибут для выделения важных элементов страниц. Это не аналог или замена тега article, и вместе их применять нельзя. Атрибут как раз подходит для выделения описаний при множественном перечислении их на странице, например, в списке статей в категории.
 
Выше мы рассмотрели теги, которые несут особую важность для создания логической структуры WEB страницы. При грамотном подходе поисковики при разборе содержимого будут лучше понимать, что в документе важно, а что нет. Чему придавать особое внимание, а на что вообще не обращать свой взор. Рекомендую придавать значение логическому назначению, а не стилистическому эффекту тегов.

Более подробное значение каждого из тегов и их более широкий список можно найти в HTML спецификации. Рекомендую к изучению официальные источники на английском языке. Дальше рассмотрим ещё некоторые полезные мета теги и атрибуты, узнаем, что такое микроразметка, для чего она нужна и как её применять.
 
 
Дополнительные мета теги и атрибуты

rel="next", rel="prev" - атрибуты, призванные отобразить связь между несколькими URL адресами, благодаря чему поисковик определит, что страницы расположены в логической цепочке. Применим для страниц пагинации. Например, для страницы номер 2 эти теги должны выглядеть примерно так:
 

<link rel="prev" href="/somePage">
<link rel="next" href="/somePage/3">

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

<meta name="robots"> - указывает ботам ПС инструкции по индексации страницы. Может иметь следующие значения:

  • noindex – запрещает индексацию страницы;
  • nofollow – запрещает ботам ходить по ссылкам на странице;
  • index,follow – аналог отсутствия данного тега, разрешает всё;
  • all – аналог index,follow;
  • none – аналог комбинации noindex,nofollow. Запрещает индексировать и переходить по ссылкам;
  • noarchive – запрещает выводить ссылку на кэш страницы в выдаче;
  • noimageindex – запрещает индексацию изображений на странице;
  • nosnippet – запрещает выводить сниппет в выдаче, удаляет сохранённую копию;

rel="canonical" - атрибут, указывающий поисковикам рекомендуемый (канонической) вариант страницы из набора очень или частично схожих, размещаемый в теге head второстепенных страниц. Применим, когда одна страница имеет несколько вариантов с разными предназначениями, а редиректить с таких страниц нельзя. Так же можно размещать со страниц, разбитых пагинацией, на одну, которая отобразит все результаты. Канонические ссылки передают вес, это очень важно. Выглядит примерно следующим образом:
 

<link rel="canonical" href="/canonical-page">

 
При использования канонических ссылок придерживайтесь следующих правил:

  • Не ссылайтесь на закрытую от индексации страницу
  • Не ссылайтесь на страницу на другом домене
  • Не ссылайтесь на не существующую страницу
  • Не используйте цепочки канонических ссылок
  • Не используйте более одной канонической ссылки на одной странице
  • Не используйте ссылки на совершенно разные по содержимому страницы

Микроразметка

Микроразметка – это способ семантической разметки в виде специализированных атрибутов, помещаемых внутри HTML тегов и не влияющих на внешний вид, но структурирующих определённую информацию особым образом. Призвана помочь улучшить визуальный вид сниппета в выдаче поисковых систем для повышения кликабельности и информативности вашего «объявления», либо улучшения взаимодействия с социальными сетями.
Существует несколько словарей и синтаксисов для использования микроразметки, в большинстве одинаково поддерживаемых основными поисковыми системами. Детально рассматривать не будет, но перечислим основные из них, и приведём небольшие примеры.

Микроданные (shema.org, rushema.org) – это синтаксис семантической разметки, состоящий из набора атрибутов, описывающих смысл тех или иных элементов WEB страницы с использованием словаря shema.org.
 

<nav>
  <ul itemscope itemtype="http://schema.org/BreadcrumbList">
    <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
      <a itemprop="item" href="/">
        <span itemprop="name">Главная</span>
        <meta itemprop="position" content="1">
      </a>
    </li>
    <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
      <a itemprop="item" href="/category">
        <span itemprop="name">Категория</span>
        <meta itemprop="position" content="2">
      </a>
    </li>
    <li>
      Новость
    </li>
  </ul>
</nav>
<span itemscope itemtype="http://schema.org/Article"> 
  <span itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"> 
    <meta itemprop="ratingValue" content="3.9"> 
    <meta itemprop="ratingCount" content="7"> 
  </span> 
</span>

 
Микроформаты (microformats.org) – это набор форматов семантической разметки HTML документов, для указания смыслового значения отдельных блоков информации. Объединяют в себе и словарь и синтаксис. Пример взят из справки Яндекс.
 

<div class="vcard">
  <div>
    <span class="category">Кафе</span>
    <span class="fn org">Ромашка</span>
  </div>
  <div class="adr">
    <span class="locality">г. Солнечный</span>,
    <span class="street-address">просп. Романтиков, д. 21</span>
  </div>
  <div>
    Телефон: <span class="tel">+7 (890) 123-45-67</span>
  </div>
  <div>
    Мы работаем <span class="workhours">ежедневно с 11:00 до 24:00</span>
    <span class="url">
      <span class="value-title" title="http://www.romashka-cafe.ru"></span>
    </span>
  </div>
</div>

 
RDFa HTML5 (rdfa.info) – ещё один синтаксис для семантической структуризации WEB страниц, рекомендуемый W3C консорциумом. Менее популярный из-за сложности в реализации. Пример с использованием словаря shema.org
 

<nav>
  <ul vocab="http://schema.org/" typeof="BreadcrumbList">
    <li property="itemListElement" typeof="ListItem">
      <a property="item" typeof="WebPage" href="/">
        <span property="name">Главная</span>
      </a>
      <meta property="position" content="1">
    </li>
    <li property="itemListElement" typeof="ListItem">
      <a property="item" typeof="WebPage" href="/category">
        <span property="name">Категория</span>
      </a>
      <meta property="position" content="2">
    </li>
    <li>
      Новость
    </li>
  </ul>
</nav>

 
JSON-LD (json-ld.org) – формат описывающий определённые данные WEB страницы с помощью объектов словаря связанных данных. Разметка оформляется в виде данных ключ = значение, и помещается внутри тега <script>. Пример с использованием словаря shema.org
 

<script type="application/ld+json">
{
  "@context": "http://www.schema.org",
  "@type": "BreadcrumbList",
  "itemListElement":
   [
     {
     "@type":"ListItem", "position":1, "item":
      {
       "@type":"WebPage",
       "@id": "/",
       "name": "Главная"
      }
     },
     {
     "@type":"ListItem", "position":2, "item":
      {
       "@type":"WebPage",
       "@id": "/category",
       "name": "Категория"
      }
     }
   ]
}
</script>

 
Open Graph (ogp.me, ruogp.me) – словарь позволяющий формировать превью публикуемой ссылки на WEB страницу в социальных сетях. Реализуется в основном путём размещения определённых мета тегов в шапке HTML документа. Ориентирован на работу с популярными социальными сетями и мессенджерами. Также используется для передачи данных в сервис Яндекс.Видео и блоки рекомендуемого контента в AdSense
 

<html prefix="og: http://ogp.me/ns#">
  <head>
    <meta property="og:title" content="Заголовок" />
    <meta property="og:description" content="Описание">
    <meta property="og:type" content="article" />
    <meta property="og:url" content="https://site.ru/page.html" />
    <meta property="og:image" content="https://site.ru/images/logo.png" />
  </head>
</html>

 
Ещё хочу привести такой пример, где используется словарь, ранее разрабатываемый Google, но в последствии слившийся с Shema.Org. Его можно встретить не только на сайтах, но и в статьях про микроразметку. Несмотря на то, что его разработка остановлена, он выполняет свои задачи и по сей день.
 

<nav>
  <ul>
    <li itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
      <a itemprop="url" href=”/”><span itemprop="title">Главная</span></a>
    </li>
    <li itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
      <a itemprop="url" href="/category"><span itemprop="title">Категория</span></a>
    </li>
    <li>
      Новость
    </li>
  </ul>
</nav>

 
Мы рассмотрели варианты синтаксиса микроразметки и использование словарей Shema.Org и Open Graph. В основном в примерах реализация «Хлебных крошек» и звездного рейтинга, но микроразметка на них не заканчивается. Для многих типов сайтов, присущи свои семантические элементы. Сейчас давайте посмотрим для чего же это всё внедрять на сайт, и как оно будет выглядеть в работе.
 
7b9be5c8b7.jpg
 
На скриншоте видно, что в сниппетах Google реализован и рейтинг, и хлебные крошки. Яндекс вроде бы как звёздочки у себя не выводит. Ниже скриншот, показывает результат работы разметки с использование Open Graph для шаринга страницы в facebook.com
 
03df305300.jpg
 
Далее хочу привести ссылки на полезные инструменты для работы с микроразметкой:

Валидаторы:

  • search.google.com/structured-data/testing-tool?hl=ru
  • webmaster.yandex.ru/tools/microtest/

Справки:

  • yandex.ru/support/webmaster/schema-org/what-is-schema-org.html
  • developers.google.com/search/docs/guides/prototype
  • habr.com/company/yandex/blog/221881/

Генератор JSON LD

  • trafpartner.ru/development/json-ld-generator

И напоследок небольшой познавательный видеоролик от Яндекса


 
 
Оптимизация скорости загрузки сайта
 
Оптимизация скорости загрузки – это комплекс мер, направленных на достижение улучшения скорости загрузки и более быстрого отображения важного контента WEB сайта пользователю. Чем быстрее загружается сайт, тем меньше пользователь ждёт, тем быстрее он находят нужную информацию или совершает покупку, а поисковый бот быстрее индексирует сайт. Давайте рассмотрим, что тут можно сделать и какими инструментами можно пользоваться.
 
 
Анализ скорости загрузки

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

  • developers.google.com/speed/pagespeed/insights/
  • testmysite.withgoogle.com/intl/ru-ru
  • web.dev/measure

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

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

Сжатие изображений

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

Файлы изображений, которые хорошо сжимаются являются jpeg и png форматы. Их и рекомендую использовать у себя на сайтах, а для их сжатия остановимся на одном онлайн сервисе imagecompressor.com/ru/. Нет, это не единственный инструмент, их много. Есть и десктопное ПО, но этот очень эффективен и прост в использовании. Для примера сожмём один jpeg файл.
 
b4c35a15b7.jpg
 
Обратите внимание на скриншоте изначальный файл был размером 731Kb. После сжатия в качество 60 он стал 74Kb, эффект просто колоссальный, не правда ли? Это не просто ускорит загрузку и отображение такого файла, но и очень сэкономит место на сервере. Для основной графики и элементов дизайн качество конечно нужно ставить выше, но всякого рода превью и технические изображения можно сжимать ещё больше. Инструмент позволяет это делать на лету, перед тем как сохранить сжатое изображение.
 
 
CSS спрайты
 
Спрайты – это несколько небольших графических элементов (логотипы, иконки, элементы дизайна…), объединённые в один файл. Своего рода графический архив, задача которого сократить количество http запросов во время загрузки страниц. Вывод изображения на WEB страницу реализуется CSS свойствами селектора с координатами положения графического элемента в спрайте по оси X и Y, где верхний левый угол будет иметь координаты 0 0.
 
Выглядит спрайт примерно следующим образом:
 
7705be23ac.jpg
 
А свойства CSS селектора будет примерно так:
 

.icon {
    background: url(images/sprite.png) 0 -35px repeat-x;
    width:32px;
    height:32px
}

 
В HTML разметку изображение будет вставляться так:
 

<span class="icon"></span>

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

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

Ещё один из вариантов сократить количество http обращений к серверу за изображениями – это кодировать изображения в строку по стандарту BASE64. Для этого также не нужно особых навыков, можно использовать десктопное ПО, а лучше онлайн инструменты. Например, этот www.base64-image.de. Очень хорошо справляется с задачей в пару кликов и выдаёт сразу два варианта строки для вывода изображения.
 
cca1fb39a6.jpg
 
Хеш строку с картинкой можно использовать с тегом <img> прямо на WEB странице, примерно так:
 

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA AAAoAAAAKCAYAAACNMs+9AAAABmJLR0QA/… CYII=">

 
Либо, через CSS свойство background:
 

.icon{
	background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAIAA…uQmCC)repeat-x;
	width:32px;
	height:32px
}

 
Метод очень прост в использовании, но имеет подводные камни, поэтому не стоит перебарщивать кодированием изображений. Строки, а они у BASE64 хеша не маленькие, будут увеличивать либо вес CSS файла, либо HTML документа, в зависимости от способа встраивания такой графики. Но всё же, при необходимости такой приём стоит использовать, так как текстовые документы сжимать легче и проще, чем графические. Да ещё и на автомате мощностями сервера.
 
 
Серверное сжатие

Оптимизировать можно не только графику, но и разного рода текстовые файлы, среди которых HTML документы, CSS и JS файлы. С сжатием таких файлов успешно справляется модуль Gzip, который по умолчанию есть почти на каждом WEB сервере, однако он не всегда включен. Давайте рассмотрим какой эффект от такого сжатия, и как его настроить для Apache и Nginx серверов.

Для анализа Gzip сжатия страниц и подключенных к ним различного рода текстовых файлов также существуют различные инструменты. Для теста воспользуемся этим checkgzipcompression.com
 
b65935cf48.jpg
 
Тест показывает, что общая выгода от сжатия у испытуемого сайта составляет без малого 70%. По-моему, это очень большой результат. Страницу весом в 18Kb пользователь загрузит весом в 3 раза меньшим. Очевидно, что скорость загрузки сжатой страницы вырастет в несколько раз. И это только одна страница, а если их несколько тысяч, посчитайте также сэкономленный трафик.

Если на вашем WEB сервере файлы отдаёт Apache, то включить Gzip сжатие поможет волшебный файл настроек .htaccess. Для включения динамической компрессии добавляем следующие настройки в упомянутый файл:
 

php_value zlib.output_compression 4096
php_value zlib.output_compression_level 6

 
Затем указываем, какие типы файлов сжимать, делаем некоторые исключения для определённых браузеров (возможно уже не актуально), включаем сам Gzip и выводим нужные нам заголовки:
 

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
  <IfModule mod_setenvif.c>
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4.0[678] no-gzip
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html
  </IfModule>
  <IfModule mod_gzip.c>
    mod_gzip_on Yes
    mod_gzip_item_include file \.js$
    mod_gzip_item_include file \.css$
  </IfModule >
</IfModule>
<IfModule mod_headers.c>
  <FilesMatch "\.(js|css|xml|gz)$">
    Header append Vary: Accept-Encoding
  </FilesMatch>
</IfModule>

 
Для включения Gzip компрессии на Nginx WEB сервере необходимо вносить настройки в конфиг, либо, на примере ISPManager, можно всё это дело включить прямо из интерфейса панели. Если вам все же придётся править конфиг, то это возможно только на своём сервере, хотя бы виртуальном. Никакой обычный хостинг вам этого сделать не позволит. Итак, открываем конфиг Nginx /etc/nginx/nginx.conf, где нужно вписать, либо расскоментировать следующего вида строки:
 

http {
  gzip on;
  gzip_disable "msie6";
  gzip_vary on;
  gzip_proxied any;
  gzip_comp_level 6;
  gzip_buffers 16 8k;
  gzip_types text/html text/plain text/css text/xml text/javascript application/json application/x-javascript application/xml application/xml+rss;
}

 
Пояснять, что за что отвечает не буду, если захотите вникнуть, то легко можно найти информацию в сети. А теперь включим сжатие на примере панели ISP Manager 5. В боковом меню в блоке WWW, выбираем WWW-домены. Затем выделяем настраиваемый домен и жмём кнопку изменить. В загрузившейся странице в самом низу есть блок “Оптимизация WWW-домена”. Там и настраиваем, примерно, как на скриншоте. Не забываем сохранить настройки.
 
3fd8b96bd7.jpg
 
Такими вот не хитрыми манипуляциями можно значительно улучшить скорость вашего сайта, что оценят не только пользователи и поисковики тоже. Но это ещё не всё, да да, есть ещё одно “волшебство”, которое по истине творит чудеса – это клиентское кэширование статических файлов.
 
 
Клиентское кеширование

Клиентское (браузерное) кэширование – это технология сохранения всевозможных файлов, в локальном хранилище браузера - кэше, для их последующей отдачи пользователю без повторной загрузки с WEB сервера. Таким образом экономятся огромные ресурсы времени, так как кэшированные файлы молниеносно отдаются пользователю с его же устройства. Это в разы увеличивает скорость загрузки страниц.

Клиентское кэширование реализуется через вывод специальных HTTP заголовков Cache-control и Expires. Сервер отправляет такие заголовки вместе с ответом, указывая браузеру сохранить или нет файл в локальное хранилище. Кешировать таким образом необходимо только редко изменяемые файлы: изображения, CSS и JS файлы, любые документы, архивы… В общем всю статику.

Для включения кеширования на WEB сервере Apache используется модуль mod_expires и mod_headers. А настройки для файла .htaccess будут выглядеть так:
 

<IfModule mod_headers.c>
  <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=2592000, public"
  </FilesMatch>
  <FilesMatch "\.(css|js)$">
    Header set Cache-Control "max-age=2592000, public"
  </FilesMatch>
  <FilesMatch "\.(xml|txt)$">
    Header set Cache-Control "max-age=172800, public, must-revalidate"
  </FilesMatch>
  <FilesMatch "\.(html|htm|php)$">
    Header set Cache-Control "max-age=86400, private, must-revalidate"
  </FilesMatch>
</IfModule>

 
Где,

  • private означает, что кэширование будет работать только на браузере пользователя. Вы можете также использовать инструкцию public, которая разрешает кэширование на прокси серверах.
  • no-cache означает, что данный запрос нельзя кэшировать.
  • max-age это время в секундах, на которое будет закэширован результат.
  • must-revalidate передает сообщение о необходимости обновления кэша в обязательном порядке при поступлении новой информации.
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault "access 7 days"
  ExpiresByType application/x-shockwave-flash "access plus 1 year"
  ExpiresByType application/javascript "access plus 1 year"
  ExpiresByType application/x-javascript "access plus 1 year"
  ExpiresByType text/javascript "access plus 1 year"
  ExpiresByType text/x-javascript "access plus 1 year"
  ExpiresByType text/html "access plus 7 day"
  ExpiresByType text/css "access plus 1 year"
  ExpiresByType image/gif "access plus 1 year"
  ExpiresByType image/jpg "access plus 1 year"
  ExpiresByType image/png "access plus 1 year"
  ExpiresByType image/x-icon "access plus 1 year"
</IfModule>

 
Где,

  • ExpiresActive включает кеширование.
  • ExpiresDefault задает время жизни файлов в кэше по умолчанию.
  • ExpiresByType задаёт время жизни указанных типов файлов в кэше.

В случае с Nginx опять нужно обращаться к конфигам и вносить следующий инструкции:
 

server {
  ...
  location ~* ^.+\.(txt|css|js|jpg|jpeg|gif|png|ico|zip)$ {
    expires max;
  }
  ...
}

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

<link rel="stylesheet" href="/assets/styles.css?v=4" type="text/css">
<script src="/assets/script.js?v=7" type="text/javascript">

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

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

Содержимое становится трудно читаемым и тяжело редактируемым, но процесс минимизации обратим, и как правило большинство популярных библиотек или фреймворков содержат файлы в двух вариантах. Причем минимизированные, обычно в своих именах содержат слово min:
 
 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

 

Например, при сжатии библиотеки jQuery версии 3.3.1 сервисом jscompress.com js файл был уменьшен на 68.21%, а это меньше на 181Kb от исходного файла. Экономия на лицо. Смотрим скриншот:
 
d3ddb6fba8.jpg
 
Для минимизации таких файлов существует множество онлайн сервисов, в том числе и универсальных, где можно сжимать и CSS и JS. А вот с HTML дела обстоят иначе, так как он обычно генерируется «недрами» CMS и повлиять на его минимизацию можно только при наличии таких функций у самой CMS, либо серверным модулем Google PageSpeed, который может выполнять очень большой объём работ по ускорению сайта в целом. Про его установку и настройку я писать не буду, если есть желание, разберётесь сами.
 
 
Минимизация подключений файлов

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

Оптимизируется это место двумя путями, либо объединением нескольких файлов в один, либо индивидуальным подключением нужных стилей и скриптов к конкретным страницам. Второе на практике сложно реализуемо, но для популярных CMS уже есть готовые решения в виде отдельных плагинов, решающих эти проблемы вплоть для каждой страницы.
 
 
 
Оптимизация индексации
 
После всех выше упомянутых методов оптимизации сайта, теперь нужно позаботиться и о том, чтоб индексирующим ботам были созданы все условия для удобства сканирования вашего сайта. И это тоже очень важно, так как различного рода препятствия не только замедлят процесс индексации, но и могут повлиять на позиции в поисковой выдаче.
По сути вся работа в этом направлении сводиться к созданию двух специализированных файлов (sitemap.xml, robots.txt), настройки необходимых редиректов и устранения дублирующего контента различными инструментами. А сейчас давайте разберёмся с упомянутыми файлами, что за они и зачем они нужны.
 
 
Файл robots.txt

Один из самых старых способов указать индексирующим ботам что индексировать на сайте, а что нет, является файл robots.txt. Это обычный текстовый файл, расположенный в корневой директории сайта, который может содержать различные инструкции для ботов разных ПС. Он может запрещать к индексации как целые разделы, так и отдельные страницы. Давайте посмотрим схему:
 
1c25d68bce.jpg
 
Слева видно, если сайт не содержит файла, то бот будет сканировать всё. А как правило, на любом WEB сайте найдутся технические или различные вспомогательные страницы, которые попросту не нужны в выдаче. Так зачем же поисковикам тратить на них время? Да и зачем сливать драгоценный вес на такие страницы?

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

Синтаксис файла очень прост, и содержит в своём арсенале не очень много директив. Будьте внимательны так как некорректно составленные правила могут запретить к индексации важные части сайта. Самое главное этот файл ничего не может запретить различным зловредным ботам, помните это.

  • User-agent - указывает для бота какой поисковой системы предназначены ниже изложенные правила. Возможные значения Yandex, Google и др. Символом * можно указать правила для всех ботов.
  • Disallow - запрещает индексировать части сайта или отдельно взятые страницы. В значениях можно использовать символ *, который помогает объединять URL адреса в определённые группы, что намного упрощает перечень правил запрета.
  • Allow - действует по тем же принципам, что и директива Disallow, только призвана для снятия запрета индексации некоторых частей сайта, ранее закрытых директивой Disallow.
  • Sitemap - значение этой директивы должно содержать в себе URL адрес sitemap.xml.

Рассмотрим не большой пример:
 

User-agent: *
Disallow: /*go.php
Disallow: /content
Allow: /content/image
Sitemap: https://site.ru/sitemap.xml

 
Где, директива User-agent указывает что правила распространяются для всех поисковых ботов. Директивы Disallow запрещают к индексации все URL адреса, где есть упоминания страницы go.php и директорию content. Allow разрешает индексировать директорию image, расположенную в директории content, которая ранее была закрыта от индексации. Ну и директива Sitemap указывает на одноимённый файл xml карты сайта.
 
 
Файл sitemap.xml

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

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

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>http://site.ru/</loc>
    <lastmod>2019-01-01T12:00:00+03:00</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>
</urlset>

 
Где,

  • <loc> - URL адрес страницы.
  • <lastmod> - дата последнего обновления страницы.
  • <changefreq> - частота обновления страницы. Возможные значения: daily, weekly, monthly, yearly, что соответствует ежедневно, еженедельно, ежемесячно, ежегодно. Не обязательный тег.
  • <priority> - важность страницы. Возможные значения: 0.0 до 1.0, где коэффициент 1.0 имеет самый высокий приоритет для индексации страницы. Не обязательный тег.

Карта сайта может содержать не более 50 тысяч URL адресов и быть весом не более 10Mb. Файл можно разбивать на несколько частей, либо создавать отдельные под разные нужды. Например, можно создавать отдельную карту для изображений или видео файлов. sitemap.xml можно архивировать и указывать URL на него с соответствующим расширением.
 
Для Google и Яндекс синтаксис карт изображений и видеофайлов отличается, поэтому если вам такие знания нужны, то пожалуйста следуйте в справки:

  • yandex.ru/support/webmaster/controlling-robot/sitemap.html
  • support.google.com/webmasters/answer/156184?hl=ru&ref_topic=4581190

Далее позвольте по данному вопросу писать не буду, ибо как настроить редиректы или запретить к индексации тот, или иной контент/страницы я писал ранее. Ознакомиться можно здесь. Ещё обратите внимание на такой метод скрытия ссылок, как здесь.
 
 
 
Итог

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

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

  • - максимально опрятный внешний вид (дизайн), с понятной структурой и навигацией;
  • - никакой лишней и назойливой рекламы, навязчивых всплывающих окон, и прочих громоздких элементов;
  • - контент максимально полезный, отвечающий на все возможные вопросы пользователя той информации, которую он искал, особенно в поиске;
  • - основной контент доступен в два – три клика от главной страницы, хорошо структурирован, разнообразен, дополнен медиа контентом;
  • - блоки перелинковки полезны в первую очередь пользователю, а потом уже поисковикам;
  • - учитесь у прямых конкурентов в топе, анализируя не только их контент, но и сами сайты;

Всё, всем удачи в оптимизации и с наступающим Новым Годом!


 

 

  • 10


#2 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 26 Декабрь 2018 - 20:14

@Ixman, Спасибо за статью, прям подарок на новый год для мозга)  

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

У меня вопрос: по вашему мнению, если есть меню в котором как бы уже есть ссылка на страницу и на странице которая открыта сейчас тоже есть ссылка на эту же страницу, получается что это два одинаковых анкора на одну страницу?


  • 1

#3 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 27 Декабрь 2018 - 09:59

@pozitron123, как я понял тут страница ссылается сама на себя, такие ссылки лучше не делать.
  • 0


#4 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 27 Декабрь 2018 - 10:44

[quote name='Ixman' timestamp='1545836333' post='184335'] Disallow: /*go.php [/quote]

[quote name="Ixman" post="184350"] А здесь у вас в примере страница переадресации закрыта от робота. То-есть я правильно понял эти страницы переадресации а конкретно go.php нужно закрывать в файле роботс?


  • 0

#5 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 27 Декабрь 2018 - 10:51

@pozitron123, ну если нужно закрыть внешние ссылки от индексации, то можно сделать их через редирект и запретить его к индексации


  • 0


#6 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 27 Декабрь 2018 - 12:02

редирект и запретить его к индексации

Так нужно ридирект запрещать индексировать да или нет?

 

И еще вопрос: Написано что тайтл и h1 обязательно должны отличаться, если мне память не изменяет то у того же даваки написано, что можно одинаковое описание использовать нигде не пишут про такой запрет?


  • 0

#7 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 27 Декабрь 2018 - 13:24

@pozitron123, редирект оптимально запрещать к индексации.

 

На счёт title и h1 глупо их дублировать, если в них можно использовать разные ключевые слова.


  • 0


#8 ShowPrint
ShowPrint
  • Пользователь PRO
  • 3 377 сообщений
  • Репутация: 978

Отправлено 27 Декабрь 2018 - 15:27

Ждал статью Ивана и не обманулся в своих ожиданиях  :smile-thumb-up:

 

Единственный момент - мне кажется что статья в основном не для самых "новичков сайтостроя и вебмастеринга", а на одну (или несколько) ступенек повыше.

Новички не включаются в процесс сразу с головой и не оценят глубину полезности сказанного без как минимум пары шишек на своей голове.

 

Важно, не используйте бэкслэши на конце URL, так как они по сути делают ещё один уровень вложенности.
Эх почему не было этой статьи когда я настраивал себе ЧПУ (((

Но перенастройка сейчас с "со слешем" на "без слеша" по моим ощущениям будет бОльшим "злом", так что пожалуй оставлю как есть... Пока, по крайней мере =)

 

Иван - тебе низкий поклон за труд (для себя уже отметил пару моментов которые подкорректировали вектор работ) и за изложение в твоём собственном стиле - где в каждом слове есть мысль.

Твою стилистику написания постов для себя называю "если читая думать, то вопросов не будет - все ответы уже написаны"   B)

 

Оффтопик


  • 2
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#9 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 27 Декабрь 2018 - 20:12

найду ещё массу полезного

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

@ShowPrint,  Закрываешь свои go.php от индексации или не пользуешься им?

использовать разные ключевые слова
 

Видимо не всегда фантазии хватает, особенно в нч ключах, чтобы и там и там " и пирожок съесть и не куда не сесть".


  • 0

#10 Mandarin
Mandarin
  • Пользователь
  • 558 сообщений
  • Репутация: 43

Отправлено 27 Декабрь 2018 - 20:30

@Ixman, Статья просто идеальная - более подробного и вдумчивого изложения мыслей я не встречал. Шедевр по оптимизации! Сохранил себе в закладки - будет чтиво на отдыхе!


  • 2


#11 ShowPrint
ShowPrint
  • Пользователь PRO
  • 3 377 сообщений
  • Репутация: 978

Отправлено 27 Декабрь 2018 - 20:35

Закрываешь свои go.php от индексации или не пользуешься им?
 Пока закрываю, но в планах переделать этот способ закрытия на PRG

Хотя исходящих ссылок у меня на комсайте и немного, но сливать вес "на сторону" как-то не очень хочется =)

 

По всей логике go.php нечего делать в индексе - "техническая" страница, не несущая посетителю полезной информации


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#12 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 27 Декабрь 2018 - 21:31

мне кажется что статья в основном не для самых "новичков сайтостроя и вебмастеринга"

 

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

 

 

Эх почему не было этой статьи когда я настраивал себе ЧПУ (((

 

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

 

 

Иван - тебе низкий поклон за труд

 

какой-то дипресняк напал, и две недели пропустил. Хотел чётче изложить и больше охватить деталей, ну уже как вышло

 

 

Видимо не всегда фантазии хватает

 

в принципе смежные ключи можно найти прямо в выдаче


Сообщение отредактировал Ixman: 27 Декабрь 2018 - 21:34

  • 0


#13 ShowPrint
ShowPrint
  • Пользователь PRO
  • 3 377 сообщений
  • Репутация: 978

Отправлено 27 Декабрь 2018 - 21:32

больше охватить деталей
 Будет настроение - дополнишь  ;)
  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#14 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 27 Декабрь 2018 - 21:33

Статья просто идеальная
 

 

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


  • 0


#15 Mandarin
Mandarin
  • Пользователь
  • 558 сообщений
  • Репутация: 43

Отправлено 27 Декабрь 2018 - 21:41

Просто видно, что написано по делу и с пониманием. А не вода.


  • 0


#16 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 28 Декабрь 2018 - 11:42

Disallow: /*go.php

Я правильно понял что звездочка перед go запрещает только те страницы которые на него заканчиваются? 


  • 0

#17 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 28 Декабрь 2018 - 11:45

@pozitron123, всё верно


  • 0


#18 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 28 Декабрь 2018 - 11:47

@Ixman,

А если просто /*.php запретить?


Сообщение отредактировал pozitron123: 28 Декабрь 2018 - 11:47

  • 0

#19 Ixman
Ixman
    Topic Starter
  • Пользователь PRO
  • 3 168 сообщений
  • Репутация: 843

Отправлено 28 Декабрь 2018 - 11:59

@pozitron123, получится запрет на все страницы с расширением php и всего скорее в корневой директории


  • 0


#20 pozitron123
pozitron123
  • Пользователь
  • 824 сообщений
  • Репутация: 159

Отправлено 28 Декабрь 2018 - 12:03

 получится запрет на все страницы с расширением php и всего скорее в корневой директории

И чем это чревато? 

 

Просто у меня на одном из сайтов в роботс стоял запрет на /*.php, скорее всего я роботс откуда-то копировал (пример правильного) для вордпресса и возник вопрос.


  • 0

robot
robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Похожие темы
  Название темы Автор Статистика Последнее сообщение

Пользователь месяца
NataliaAntalia NataliaAntalia 1-й за Октябрь
Очков активности: 480 2 темы, 58 сообщений, 5 баллов репутации
Сайт: zdorovemedicina.ru
ТОП самых активных за этот месяц
  • Фотография ShowPrint
    #1

    ShowPrint (ShowPrint.ru)
    Очков активности: 468 0 тем, 24 сообщения, 13 баллов репутации

  • Фотография BLIK
    #2

    BLIK
    Очков активности: 283.5 0 тем, 21 сообщение, 9 баллов репутации

  • Фотография Vmir
    #3

    Vmir
    Очков активности: 277.5 3 темы, 28 сообщений, 5 баллов репутации

  • Фотография Totti
    #4

    Totti
    Очков активности: 252 1 тема, 21 сообщение, 7 баллов репутации

  • Фотография Megoydagi
    #5

    Megoydagi (24ho.ru)
    Очков активности: 193.5 8 тем, 19 сообщений, 3 балла репутации

  • Фотография MattCutts
    #6

    MattCutts (dmitrylee.ru)
    Очков активности: 166.5 Вне конкурса за определение пользователя месяца

  • Фотография NataliaAntalia
    #7

    NataliaAntalia (zdorovemedicina.ru)
    Очков активности: 138 Вне конкурса за определение пользователя месяца

  • Фотография miketomlin
    #8

    miketomlin
    Очков активности: 78 0 тем, 13 сообщений, 4 балла репутации

  • Фотография TimurR
    #9

    TimurR
    Очков активности: 42 3 темы, 5 сообщений, 2 балла репутации

  • Фотография kolver
    #10

    kolver
    Очков активности: 24 3 темы, 7 сообщений, 1 балл репутации

  • Показать весь ТОП 10
Поддержите форум! =)
Апдейты
  • Яндекс ИКС: 29.10.2019
  • Яндекс выдача: 17.11.2019
Топ 5 участников по репутации

Оформление форума – IPBSkins.ru