Blog

GET, POST и безопасное индексирование большей части веб-пространства

Вторник, 1 ноября 2011 г.

По мере развития интернета возможности Google по сканированию и индексированию также должны совершенствоваться. Мы
улучшили индексирование Flash, создали более надежную
инфраструктуру под названием Caffeineи даже начали
сканировать формы , где это целесообразно. Теперь, особенно в связи с растущей популярностью JavaScript и AJAX, мы все чаще сталкиваемся с веб-страницами, требующими запросов POST — либо для всего содержимого страницы, либо потому что на страницах не хватает информации и/или они выглядят полностью сломанными без ресурсов, возвращаемых запросом POST. Для Поиска Google это далеко не идеальный вариант, поскольку, если мы не обнаруживаем и не индексируем контент должным образом, пользователи могут не получить доступ к наиболее полным и релевантным результатам.

GET, POST и безопасное индексирование большей части веб-пространства

Мы, как правило, рекомендуем использовать
GET
для получения ресурсов, необходимых странице, и это наш предпочтительный метод сканирования. Мы начали эксперименты по преобразованию запросов POST в GET, и хотя в некоторых случаях это остается рабочей стратегией, содержимое, возвращаемое веб-сервером для запросов
GET и POST , часто кардинально различается. Кроме того, существуют веские причины для использования POST (например, к запросу POST можно прикрепить больше данных, чем к GET). Поэтому, хотя запросы GET остаются гораздо более распространенными, чтобы находить больше контента в сети, Googlebot теперь может выполнять запросы
POST , когда мы считаем это безопасным и целесообразным.

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

Давайте рассмотрим несколько сценариев запросов POST , которые демонстрируют, как мы улучшаем сканирование и индексирование в ногу с развитием интернета.

GET, POST и безопасное индексирование большей части веб-пространства — 2

Примеры запросов POST от Googlebot

  • Сканирование страницы через редирект POST
  • Сканирование ресурса через POST XMLHttpRequest: в этом пошаговом примере мы улучшаем как индексирование страницы, так и ее мгновенный предварительный просмотр (Instant Preview), отслеживая автоматический XMLHttpRequest , генерируемый при рендеринге страницы.
  1. Google сканирует URL yummy-sundae.html.
  2. Google начинает индексирование yummy-sundae.html и в рамках этого процесса решает попытаться отрендерить страницу, чтобы лучше понять ее содержимое и/или сформировать мгновенный предварительный просмотр.
  3. Во время рендеринга yummy-sundae.html автоматически отправляет XMLHttpRequest для ресурса hot-fudge-info.html, используя метод POST .
  4. URL, запрошенный через POST, а именно hot-fudge-info.html, вместе с передаваемыми данными добавляется в очередь сканирования Googlebot.
  5. Googlebot выполняет запрос POST для сканирования hot-fudge-info.html.
  6. Теперь у Google есть точное представление yummy-sundae.html для мгновенного предварительного просмотра. В определенных случаях мы также можем внедрить содержимое hot-fudge-info.html в yummy-sundae.html.
  7. Google завершает индексирование yummy-sundae.html.
  8. Пользователь ищет «hot fudge sundae».
  9. Алгоритмы Google теперь могут точнее определить релевантность yummy-sundae.html для этого запроса, и мы можем корректно отобразить снимок страницы для мгновенного предварительного просмотра.

Повышение сканируемости и индексируемости вашего сайта

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

  • Предпочитайте GET для получения ресурсов, если нет особой необходимости использовать
    POST.
  • .
    Убедитесь, что нам разрешено сканировать ресурсы, необходимые для рендеринга вашей страницы. В примере выше, если доступ к hot-fudge-info.html запрещен вrobots.txt
    , Googlebot не станет его загружать. Более тонкий нюанс: если JavaScript-код, выполняющий XMLHttpRequest , находится во внешнем .jsC (или .js) файле, заблокированном в robots.txt, мы не увидим связь между yummy-sundae.html и hot-fudge-info.html. Поэтому, даже если сам последний ресурс не заблокирован, это вряд ли нам поможет. Мы встречали и более сложные цепочки зависимостей. Чтобы помочь Google лучше понять ваш сайт, почти всегда лучше разрешить Googlebot сканировать все ресурсы.
    Вы можете проверить, заблокированы ли ресурсы, с помощью
    Webmaster Tools
    Labs >
    Instant Previews.
  • Убедитесь, что вы возвращаете Googlebot тот же контент, который отображается в веб-браузерах пользователей.
    Клоакинг
    (отправка разного контента Googlebot и пользователям) является нарушением наших
    Webmaster Guidelines
    , поскольку, помимо прочего, это может привести к тому, что мы предоставим пользователю нерелевантный результат — контент, который пользователь видит в своем браузере, может кардинально отличаться от того, что мы просканировали и проиндексировали. Мы видели множество POST примеров запросов, где веб-мастер не злонамеренно применил клоакинг (что все равно является нарушением), и этот клоакинг — даже при малейших изменениях — приводил к ошибкам JavaScript, которые препятствовали точной индексации и полностью сводили на нет саму причину использования клоакинга. Подводя итог: если вы хотите, чтобы ваш сайт был удобен для поисковых систем, клоакинг — это скользкая ситуация, которой лучше избегать.

    Чтобы убедиться, что вы не занимаетесь клоакингом случайно, вы можете использовать
    Instant Previews
    внутри Webmaster Tools или попробовать установить строку User-Agent в вашем браузере следующим образом:

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

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

Управление вашим контентом

Если вы хотите запретить сканирование или индексацию контента для Google Web Search, традиционные
robots.txt rules
остаются лучшим методом. Чтобы предотвратить появление Instant Preview для вашей страницы или страниц, ознакомьтесь с нашим разделом
Instant Previews FAQ
, в котором описаны Google Web Preview User-Agent и nosnippet meta tag.

Перспективы на будущее

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

Alien Road

Как мы это применяем

Google announcements age. We keep this post here for the record, and we note for clients whether the behaviour it describes still applies today or has since been superseded.

Связанные услуги

Поделиться