О сканировании в декабре: CDN и сканирование

Вторник, 24 декабря 2024 г.

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

Что такое сеть доставки контента

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

CDN могут значительно увеличить скорость загрузки сайта, показывая пользователям контент с ближайшего сервера. Например, если пользователь из Австралии перешел на сайт, размещенный на сервере из Германии, CDN загрузит запрошенные материалы из кеша в Австралии, чтобы не передавать их через весь мир. Насколько высокой ни была бы скорость передачи, страны разделяет огромное расстояние.

Кроме того, системы доставки контента помогают сайтам избегать перегрузки и защищаться от различных угроз. Обрабатывая значительный объем трафика по всему миру, CDN способны создавать надежные модели, которые позволяют обнаруживать аномалии трафика и блокировать доступ подозрительных пользователей. Например, 21 октября 2024 г. системы компании Cloudflare смогли самостоятельно распознать и отразить очень сильную DDoS-атаку мощностью 4,2 ТБ/с, которая длилась около минуты.

Как CDN могут помогать вашему сайту

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

  • Кеширование в CDN. Если контент, такой как медиафайлы, код CSS, JavaScript или HTML, загружается из кеша CDN, ваши серверы не расходуют вычислительные ресурсы и пропускную способность и поэтому располагают большей мощностью. В результате обычно растет как скорость загрузки страниц в браузерах, так и количество конверсий.
  • Защита от flood-атак. CDN хорошо приспособлены для того, чтобы выявлять и блокировать чрезмерный и вредоносный трафик, поэтому посетители могут переходить на ваш сайт, даже если ваши серверы перегружены роботами или злоумышленниками.
    Эти средства защиты подходят для блокировки не только некачественного, но и любого нежелательного трафика. Так, вы можете запретить доступ поисковым роботам, определенному типу клиентов или троллям, которые пользуются одним и тем же IP-адресом. Установить подобные блокировки можно также на сервере или в брандмауэре, но удобнее для этого воспользоваться интерфейсом CDN.
  • Надежность. Некоторые CDN позволяют пользователям переходить на сайт, который временно недоступен. Конечно, пользователи получат доступ лишь к статическому контенту, но этого может быть достаточно, чтобы удержать важных клиентов.

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

Как сканирование влияет на сайты с CDN

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

Как CDN влияют на частоту сканирования

Инфраструктура Google допускает повышенную частоту сканирования сайтов, на которых используется CDN. При этом данные о CDN должны извлекаться по IP-адресу сервиса, предоставляющего URL, который сканируют наши роботы. Обычно при подобном порядке работы проблем не возникает.

Предположим, вы создали сайт фотобанка, в котором 1 000 007 изображений. На сайте множество страниц: целевая страница, страницы категорий, а также страницы со сведениями обо всех доступных материалах. Как сказано в нашей документации о скорости сканирования, Google Поиск стремится сканировать подобные страницы с максимально возможной скоростью, которая не приводит к чрезмерной загрузке серверов. Если количество запросов на сканирование возрастает и сервер начинает отвечать медленно, Google применяет ограничение, чтобы нормализовать нагрузку на сервер. Пороговое значение, при котором вводится ограничение, будет выше обычного, если наши системы определят, что ваш сайт работает на базе CDN и способен обрабатывать больше запросов одновременно, а значит его можно сканировать быстрее.

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

Итак, даже если сайт опирается на CDN, вашему серверу будет необходимо показать каждый из 1 000 007 URL хотя бы раз. Только после этого все ваши URL смогут загружаться из кеша CDN. Если вы планируете использовать много URL одновременно, учтите, что загрузка из кеша предполагает значительную нагрузку на лимит на сканирование и может привести к повышению частоты сканирования в течение нескольких дней.

Как CDN влияет на отрисовку

Как мы объяснили в первой записи серии "О сканировании в декабре", посвященной сканированию ресурсов, если приписать ресурсы к собственному имени хоста или имени хоста CDN (cdn.example.com), то WRS (Web Rendering Service – сервис отрисовки веб-страниц) сможет отрисовывать страницы эффективнее. Обратите внимание, что в результате может снизиться скорость загрузки страницы, так как в таком случае устанавливается подключение к другому имени хоста. Поэтому при оценке эффективности отрисовки необходимо обращать пристальное внимание на удобство страниц.

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

Таким образом, рекомендуем подобрать решение, которое больше всего подходит вашему бизнесу: использует отдельное имя хоста (cdn.example.com) для статических ресурсов и/или обеспечивает поддержку основного имени хоста за счет ресурсов CDN. Инфраструктура сканирования Google совместима с обоими вариантами.

В каких случаях CDN перестраховываются

Из-за особенностей того, как CDN защищают ресурсы от flood-атак и как поисковые роботы сканируют страницы, нужные вам роботы могут оказываться в черном списке CDN, чаще всего в брандмауэре для веб-приложений (WAF). В подобных случаях поисковые роботы больше не могут сканировать ваш сайт, а он, в свою очередь, не допускается к показу в результатах поиска. Блокировка может вводиться разными способами, некоторые из которых особенно плохо сказываются на выдаче сайта в результатах поиска Google. Поскольку блокировки происходят на стороне CDN, управлять ими зачастую затруднительно, а иногда и невозможно. В этой записи мы разделим все блокировки на две группы: жесткие и мягкие.

Жесткие блокировки

Жесткой можно назвать блокировку, при которой CDN в ответ на запрос на сканирование отправляет сообщение о той или иной ошибке. Это может быть:

  • Сообщение с кодами статуса HTTP 503/429. Такие коды статуса обычно отправляются при временной блокировке. В этом случае у вас будет время, чтобы отменить блокировку, ошибочно введенную CDN.
  • Сообщение об истекшем времени ожидания сети. URL, которых касается сообщение о подобной проблеме, будут удалены из поискового индекса Google, поскольку такие ошибки сети считаются критическими. Кроме того, может значительно снизиться частота сканирования сайта, поскольку наши системы сканирования получат сигнал о том, что ресурс перегружен.
  • Случайное сообщение об ошибке с кодом статуса HTTP 200. Подобные ошибки также называются ложными и считаются особенно тяжелыми. Если Google решит, что такое сообщение указывает на серьезную ошибку (например, ошибку с кодом статуса HTTP 500), URL будет удален из результатов поиска. В противном случае все страницы с одинаковым сообщением об ошибке могут быть удалены из поискового индекса Google как копии исходной страницы. Системы индексирования Google далеко не всегда запрашивают повторное сканирование повторяющихся URL, поэтому для устранения описанной неполадки может потребоваться значительное время.

Мягкие блокировки

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

Паучок озадачен, потому что его приняли за человека

Наши поисковые роботы четко знают, что они не люди, и не пытаются выдавать себя за них. Они лишь стремятся сканировать интернет-ресурсы. А когда появляется межстраничное сообщение, они видят только его, а не ваш сайт. Мы настоятельно рекомендуем в подобных случаях сообщать поисковым роботам и иным автоматизированным клиентам, что контент временно недоступен, отправляя им код статуса HTTP 503. Тогда ваш контент не будет автоматически удален из индекса Google.

Как выполнять отладку заблокированных ресурсов

При любом виде блокировки удобнее всего провести тестирование, изучив отрисованное изображение при помощи инструмента проверки URL в Search Console. Если в инструменте появилась ваша страница, всё в порядке. Если же вы видите пустую страницу, сообщение об ошибке или предложение подтвердить, что вы человек, обратитесь к поставщику CDN.

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

Тем, кто хочет, чтобы их сайты стабильно появлялись в поисковых системах, настоятельно рекомендуем убедиться, что у нужных поисковых роботов есть доступ к этим сайтам. Помните, что IP-адреса могут быть добавлены в черный список автоматически без вашего ведома. Поэтому у вашего сайта появится больше шансов на успех в результатах поиска и не только, если вы будете время от времени уделять внимание черным спискам. Если черный список такой же длинный, как эта запись, поищите несколько первых сегментов из диапазонов IP-адресов. Например, попробуйте искать не 192.168.0.101, а лишь 192.168.

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


Хотите узнать больше? Прочитайте все записи из серии "О сканировании в декабре"