Cloudflare – это облачная платформа, которая выступает посредником между Вашим сайтом на хостинге и конечными посетителем Вашего сайта. Это «облако» представляет собой фильтр, щит, барьер – блокирует вредоносный трафик, и даёт «зелёный коридор» для обычного посетителя сайта. Существует множество настроек и тонкостей работы данного облачного сервиса.

Данный сервис может быть очень полезен вебмастеру — он помогает успешно отражать DDoS – атаки, блокировать трафик ботов, маскировать (скрывать) реальный IP-адрес, обеспечивает перевод сайта на безопасный протокол HTTPS (выдаёт для сайта SSL — сертификат), увеличивает скорость работы сайта за счёт кеширования страниц сайта и многое другое.
Но есть сложности для тех, кто впервые зарегистрировался в сервисе Cloudflare и только перевёл сайт на работу через облачную платформу, сменив данные DNS хостинга на значение DNS сервиса Cloudflare (faye.ns.cloudflare.com, porter.ns.cloudflare.com). Все настройки Cloudflare «по умолчанию» могут существенно, в моменте, негативно повлиять на Ваш сайт – могут выпасть страницы сайта из индекса google, просадка трафика, потеря позиций сайта по многим ключевым запросам. А всё дело в жёсткой блокировке входящего трафика, в т.ч. поисковых роботов, так необходимых для полноценной работы и развития сайта. По причине не возможности зайти на сайт и просканировать контент – google его просто не индексирует (новый контент), либо убирает из индекса уже ранее проиндексированные страницы, по причины их недоступности.
Инструкция, как настроить Cloudflare для нормальной работы Вашего сайта. Итак, Вы успешно зарегистрировались в сервисе Cloudflare, добавили Ваш домен в сервис, и сменили данные DNS на значения Cloudflare. Что дальше?
Создать правило для поисковых роботов Google, для их автоматического пропуска мимо фильтров, для беспрепятственного посещения (сканирования) сайта:
- Нажимаем на Ваше доменное имя в главной консоли Cloudflare. Слева в меню выбираем «Security» — «Security rules» — «Create rule»:


- Из выпадающего списка доступных шаблонов правил – выбираем «custom rule»:

- Указываем данные для создания «Rules» — «New custom rule». Задаём название правила (произвольное), указываем «Field» — «User Agent» (кого это правило будет касаться), «Operator» — «contains» (содержит), «Value» — «Googlebot» (значение, название бота). Также добавляем в правиле (через «или») строчки со значениями «Googlebot-Image», «Googlebot Smartphone» (для пропуска роботов для сканирования графического материала на сайте, а также роботов для сканирования мобильной версии сайта):

- Выбираем действие «Skip» (пропустить), активируем галочку и выставляем все опции в правиле «WAF components to skip», после чего активируем правило:

Таким образом, мы получим правило, которое автоматически пропускает все запросы, где User-Agent содержит «Googlebot» (Googlebot-Image, Googlebot Smartphone), мимо фильтров:
Domais – YOUR DOMAIN NAME – Security – Security rules – «Skip Googlebot» (это название указано для примера и отражения сути операции, своё название придумываете сами). {Match against: User Agent contains «Googlebot» or «Googlebot-Image» or «Googlebot Smartphone»; Action: Skip} // «User-Agent» содержит «Googlebot» = > Действие «Пропустить».
Создать правило для запросов из сети Google (AS Num 15169), для их автоматического пропуска мимо фильтров, для беспрепятственного посещения (сканирования) сайта:
- Нажимаем на Ваше доменное имя в главной консоли Cloudflare. Слева в меню выбираем «Security» — «Security rules» — «Create rule»:


- Из выпадающего списка доступных шаблонов правил – выбираем «custom rule»:

- Указываем данные для создания «Rules» — «New custom rule». Задаём название правила (произвольное), указываем «Field» — «AS Nun» (кого это правило будет касаться – идентификация сети), «Operator» — «equals» (равно), «Value» — «15169» (значение, сеть Google), выбираем действие «Skip» (пропустить):

- Активируем галочку и выставляем все опции в правиле «WAF components to skip», после чего активируем правило:

Таким образом, мы получим правило, которое автоматически пропускает все запросы, где AS Num равен значению «15169» (сеть Google), мимо фильтров:
Domais – YOUR DOMAIN NAME – Security – Security rules – «Access Google Network» (это название указано для примера и отражения сути операции, своё название придумываете сами). {Match against: AS Num equals «15169»; Action: Skip} // «AS Num» равно «15169» = > Действие «Пропустить».
Создать правило для отключения проверки целостности браузера для запросов из сети Google (AS Num 15169), для их автоматического пропуска мимо фильтров, для беспрепятственного посещения (сканирования) сайта:
- Нажимаем на Ваше доменное имя в главной консоли Cloudflare. Слева в меню выбираем «Security» — «Settings» — «Browser integrity check» (активируем галочку) — «Configurations» (нажимаем «редактировать») — «Create rule»:


- Указываем данные для создания «New custom rule». Задаём название правила (произвольное), ставим галочку «If incoming requests match…» — «Custom filter expression», указываем «Field» — «AS Nun» (кого это правило будет касаться – идентификация сети), «Operator» — «equals» (равно), «Value» — «15169» (значение, сеть Google):

- Выставляем переключатель «Browser Integrity Check» — в не активное положение, после чего снизу окна активируем правило:

Таким образом, мы получим правило, которое автоматически НЕ запускает проверку целостности браузера (включение проверки на основе JavaScript может заблокировать мобильного Googlebot, так как он не выполняет скрипты) и пропускает все запросы, где AS Num равен значению «15169» (сеть Google), мимо фильтров:
Domais – YOUR DOMAIN NAME – Security – Settings – Browser integrity check – Configuration rule – «Without Browser integrity check and Access Google Network» (это название указано для примера и отражения сути операции, своё название придумываете сами). {Match against: AS Num equals «15169»; Action: Skip} // «AS Num» равно «15169» = > Действие «Пропустить».
Создать правило по запрету сжатия данных (при необходимости). Если на Вашем сайте вдруг появилась абракадабра (набор символов и знаков) вместо нормального отображения текста – проблема в сжатии данных, которые применяет Cloudflare при пересылке данных от сервера, где физически расположен сайт, к пользователю, либо наоборот, от пользователя к сайту.
Способ устранения проблемы — создать правило, запрещающее «компрессию данных» при их передаче (All incoming requests – по всем входящим запросам), для Вашего сайта:
- Нажимаем на Ваше доменное имя в главной консоли Cloudflare. Слева в меню выбираем «Rules» — «Overview» — «Create rule»:


- Из выпадающего списка доступных шаблонов правил – выбираем «comppression rule»:

- Указываем данные для создания «Rules» — «Compression Rules». Задаём название правила (произвольное), указываем «All incoming requests» (будет касаться всех запросов):

- Указываем «отключить компрессию» и активируем правило:

Таким образом мы получим правило, запрещающее компрессию данных:
Domais – YOUR DOMAIN NAME — Rules – Overview – «NO Compression content Rule» (это название указано для примера и отражения сути операции, своё название придумываете сами). {Match against: All incoming requests; Action: Compress none}.
Другие возможности (опции) Cloudflare:
- Если сайт находится под DDoS — атакой, или нашествием ботов на сайт — экстренно снять нагрузку с сайта / хостинга поможет включение режима «Under Attack Mode» (сайт под атакой). Активируйте переключатель «Under Attack Mode» в разделе «Quick Actions»:
Domais – YOUR DOMAIN NAME — Quick Actions — Under Attack Mode.
Данный режим не использовать постоянно включённым, т.к. это блокирует всех ботов, включая ботов поисковых систем (как следствие их длительной блокировки – не индексация страниц сайта и выпадение их из индекса google). Использовать только на время атак, после чего – отключать данный режим.
- Если понадобиться очистить кеш данных какого – либо сайта в Cloudflare:
Domais – YOUR DOMAIN NAME — Caching – Configuration – «Purge Everything» (очистить все данные);
- Если понадобиться отключить Cloudflare от управления файлом robots.txt (снять ограничения, наложенные cloudflare):
Domais – YOUR DOMAIN NAME — Security – Settings – «Manage your robots.txt» — «Configurations» — «Disable robots.txt configuration».